Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery计时器在窗口更改时停止,而不是在iframe焦点上停止_Javascript_Jquery_Google Chrome_Iframe_Mozilla - Fatal编程技术网

Javascript jQuery计时器在窗口更改时停止,而不是在iframe焦点上停止

Javascript jQuery计时器在窗口更改时停止,而不是在iframe焦点上停止,javascript,jquery,google-chrome,iframe,mozilla,Javascript,Jquery,Google Chrome,Iframe,Mozilla,我有一个PTC(点击付费)网站,在iframe内显示广告商网站。 现在,如果有任何用户更改窗口,我将尝试停止计时器,以便强制用户在特定时间段内查看广告商网站 当我使用 window.onblur & window.onfocus 如果我的窗口中没有任何iframe,它可以正常工作。 但当用户悬停到iframe时,window.onblur事件将运行,但我试图确保如果用户在窗口内或iframe中,则不会发生任何事情。 只有在窗口更改或标签更改时,我们才能停止timmer,这是我在我的水

我有一个PTC(点击付费)网站,在iframe内显示广告商网站。 现在,如果有任何用户更改窗口,我将尝试停止计时器,以便强制用户在特定时间段内查看广告商网站

当我使用

window.onblur & window.onfocus 
如果我的窗口中没有任何iframe,它可以正常工作。 但当用户悬停到iframe时,window.onblur事件将运行,但我试图确保如果用户在窗口内或iframe中,则不会发生任何事情。 只有在窗口更改或标签更改时,我们才能停止timmer,这是我在我的水平上尽力做到的

    var has_focus = false;
    var timer=0;

    function loading_time() {

        $('iframe').hover(function(){
            has_focus=true;
        });

        $('iframe').click(function(){
            has_focus=true;
        });


        if(has_focus==true){

            timer++;
            $('#ss').text(timer);
        }
            setTimeout("loading_time()", 1000);
    }

    window.onblur = function(){
        has_focus=false;
    }

    window.onfocus = function(){
        has_focus=true;
    }

    loading_time();
但是,当用户转到iframe并单击任何输入字段时,焦点被损坏了&这段代码将无法工作。 此外,这段代码还有一些错误,例如当用户悬停到iframe window.blur事件发生时&它与iframe.hover重叠,导致计时器停止

我尝试了一切,但无法做出一个好的逻辑来帮助我检测用户是否在当前窗口或iframe上&如果他更改了窗口或选项卡,那么我可以停止计时器

我想强制用户在特定时间查看网站

上面的代码有很多错误,有时计时器会停止,即使它在查看iframe站点时也会停止&有时计时器不会停止,即使我最小化了窗口

所以现在我不知道我正在尝试的事情是否可能,因为

iframe.onfocus 

在jquery中不起作用我认为如果这可以起作用,那么可能是我可以设置一个条件来检查两者是否都是焦点&然后可以做我想做的任何事情。

尝试使用jquery获取加载的iframe内容,并在显示之前将脚本附加到其中。这不可能,因为我不想更改iframe用户必须执行的内容直接访问广告商网站,以便他们也可以跟踪访问者。