元素上的Jquery idletimer在jsfiddle中工作,而不是在浏览器中

时间:2014-03-27 16:26:03

标签: javascript jquery idle-timer

我非常困惑......

大约一天前,我发布了一个关于使用附加到元素的idletimer的查询,以便事件在页面上的特定元素中活动/不存在活动时触发或不触发,如下所示:

$("#testme"  ).on( "idle.idleTimer", function(event, elem, obj){ $("#test").html("I am very idle");});
$( "#testme"  ).on( "active.idleTimer", function(event, elem, obj, triggerevent){ $("#test").html("not idle");});
$( "#testme" ).idleTimer(3000);

我似乎已经开始工作了:你可以在http://jsfiddle.net/peterrr73/C3w7f/3看到它快乐地运作。但是,当我将相同的代码粘贴到单独的文件中并将其放在网络上时,它会失败:您可以在http://www.sd-editions.com/CantApp/index4.html看到此信息。更令人费解的是:你可以在http://www.sd-editions.com/CantApp/index2.html看到闲人在附加到整个文档时正在工作。

发生了什么事?当我进入在线无法运行的实例时,没有报告错误。

1 个答案:

答案 0 :(得分:1)

  • jsfiddler运行onLoad,因此所有正文节点都已加载
  • 第一个链接使用未加载的dom elements
  • 第二个链接将事件附加到document

这是您的解决方案(使用选择器包装代码):

$(function() {
/* your code goes here */
});