1
我有一个小问题,在iframe中有绝对定位元素。Iframe和绝对定位元素
所以我有一个页面,在页面上我有一个小游戏iframe。在比赛中是一个人,这个人有绝对定位的学生。学生们正在通过JavaScript移动。 一切工作正常,但如果我打开该页面,并继续浏览其他页面在不同的选项卡中,我回来后,学生在以前的其他地方(完全ut形式的眼睛。)
还有更多元素绝对定位在该iframe中,并且没有任何问题,我想这是因为Javascript动画。有人遇到过类似的问题吗?很抱歉,但由于许多原因,我无法在此发布页面。
我可以为学生动画后脚本:
function eyes_sides(){
$('.eyes').animate({
left:parseInt($('.eyes').css('left'))-9
},{duration:1500});
$('.eyes').animate({
left:parseInt($('.eyes').css('left'))
},{duration:1000});
}
function eyes_roll(){
$('.eyes').animate({
left:parseInt($('.eyes').css('left'))-7,
top:parseInt($('.eyes').css('top'))-18
},{duration:1800});
$('.eyes').animate({
left:parseInt($('.eyes').css('left')),
top:parseInt($('.eyes').css('top'))
},{duration:1300});
}
function animate_eyes(){
var animation = random_number(1,2);
//alert(animation);
switch(animation){
case 1:
eyes_roll();
break;
case 2:
eyes_sides();
break;
}
var delay = random_number(4000,12000);
window.animateEyes = setTimeout(function(){animate_eyes()},delay);
}
脚本是不完美的,但做什么要求。
我在想什么可能会导致这个问题,也许它以某种方式连接到该选项卡未激活时运行的动画?也许增加“onBlur”和“onFocus”来停止/启动动画会有帮助吗?
谢谢指教!
我想你会需要'onBlur()'。检查这个答案:http://stackoverflow.com/questions/6112671/settimeout-speeds-up-with-multiple-tabs – Teemu 2012-04-17 07:42:58
好吧,所以我已经尝试从其他问题的修复,和一些模糊和重点,但没有帮助。我猜onblur和focus对iframe没有太大的影响。任何其他想法? – Tom 2012-04-17 08:38:25
它不会关注焦点和模糊。尝试创建一个div作为iframe的背景。 – 2012-04-17 08:56:11