jQuery - 在X秒后删除iFrame中的不可见div?

时间:2013-01-03 18:32:48

标签: jquery

基于此脚本:

jsFiddle

var W=0, H=0, X=0, Y=0;
$(".iframe").each(function(i,el){
   W = $(el).width();
   H = $(el).height();
   X = $(el).position().left;
   Y = $(el).position().top;
   $(this).after('<div class="overlay" />');
    $(this).next('.overlay').css({
        width: W,
        height: H,
        left: X,
        top: Y        
    });
});

// TRACK MOUSE POSITIONS (the overlay will prevent clicks on iframe page)
var mx = 0, my = 0;
$('.overlay').on('mousemove click',function(e){
    mx = e.clientX - $(this).position().left;
    my = e.clientY - $(this).position().top;

    if(e.type==='click'){
        alert('clicked at: X='+mx+' Y='+my)
    }        
});

是否可以在X秒后自动删除不可见的div?

由于

2 个答案:

答案 0 :(得分:1)

将以下内容作为on()回调的一部分。

window.setTimeout(function(){
                     $('.overlay').remove();
                  }, 10000); //10 sec delay

有关详细信息,请参阅setTimeout docs。此外,您还需要删除显示坐标的标签。

答案 1 :(得分:0)

已修改:如果您要删除iframe的内容,可以点击以下链接:
Unloading/Removing content from an iFrame 你应该把它放在这样的计时器中:

// delete after 3 seconds.
var myVar = setInterval(function(){myTimer()},3000);
function myTimer()
{
   // remove the div
   $('#yourDiv').remove();
}

有关javascript计时的详细信息,请点击此链接:JavaScript Timing Events
希望能提供帮助。