Javascript 防止jQuery就绪处理程序触发
在某种情况下,我希望jQueryJavascript 防止jQuery就绪处理程序触发,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,在某种情况下,我希望jQueryready处理程序被绑定为不会在DOMContentReady事件上实际启动。这些处理程序绑定在不同的地方,包括各种包含文件、插件等。因此,虽然我可以在页面顶部附近的脚本中设置某种全局变量,并在每个$(document).ready()绑定前放置一个if条件来检查此变量,但我不希望这样 理想情况下,我在寻找两件事中的一件 我可以在includes之前在jQuery对象上设置一个属性,告诉它忽略对.ready() 在触发DOMContentReady之前,我可以在
ready
处理程序被绑定为不会在DOMContentReady事件上实际启动。这些处理程序绑定在不同的地方,包括各种包含文件、插件等。因此,虽然我可以在页面顶部附近的脚本中设置某种全局变量,并在每个$(document).ready()
绑定前放置一个if
条件来检查此变量,但我不希望这样
理想情况下,我在寻找两件事中的一件
- 我可以在includes之前在jQuery对象上设置一个属性,告诉它忽略对
.ready()
- 在触发DOMContentReady之前,我可以在文档末尾的内联脚本中调用一个方法,以解除
处理程序的绑定李>ready()
$(document).unbind('ready')
不起作用,我想是因为.ready()
不是一个普通的事件绑定
这能做到吗?如果是,怎么做
我有一个模糊的想法,就是扩展jQuery原型,并用一个方法替换ready()
,该方法将检查我要介绍的新属性。这有意义吗?你应该使用
您将
解除绑定的代码放在哪里?如果将其置于ready
函数之前,则不应解除绑定。如果将其放入ready
功能中或之后。它已经被调用了。如果特定条件匹配,您可以在ready
函数中返回false
。否,问题是调用$(文档)。ready()
不要被$(文档)解除绑定。解除绑定('ready')
。我不知道为什么。如果你能展示你的代码,我可以向你澄清。顺便说一句,看起来你已经找到了答案。如果这听起来像是个问题的话。您不能解除绑定未来处理程序。我假设您在ready
函数调用之前解除绑定。我理解这一点。关键是,对于ready()
而言,在任何点调用unbind('ready')
都不会阻止ready()
处理程序触发。看,这看起来很有希望。目前我还没有我的开发环境,但我认为这正是我所需要的+1.
$.holdReady(true);
$.getScript("myplugin.js", function() {
$.holdReady(false);
});