Javascript jQuery:拦截原始DOM就绪事件?
是否可能以某种方式截获DOM ready事件,以便正常情况下在Javascript jQuery:拦截原始DOM就绪事件?,javascript,jquery,Javascript,Jquery,是否可能以某种方式截获DOM ready事件,以便正常情况下在$(document).ready(function(){…}中触发的任何内容都不会执行?然后手动触发事件,以便执行代码 在我的例子中,我有大量的现有代码已经依赖于$(document).ready(function(){…},我希望我不必进行搜索/替换,就可以让所有代码都依赖于自定义的手动触发事件。就是为了满足这种需要而设计的 任何附加了 .bind()或其快捷方式方法之一 当相应的 事件发生。它们可以被激发 但是,使用.trigg
$(document).ready(function(){…}
中触发的任何内容都不会执行?然后手动触发事件,以便执行代码
在我的例子中,我有大量的现有代码已经依赖于$(document).ready(function(){…}
,我希望我不必进行搜索/替换,就可以让所有代码都依赖于自定义的手动触发事件。就是为了满足这种需要而设计的
任何附加了
.bind()或其快捷方式方法之一
当相应的
事件发生。它们可以被激发
但是,使用.trigger()手动
方法。执行对.trigger()的调用
处理程序的顺序与它们的顺序相同
如果事件被触发的话
用户自然会:
如果不希望“正常”触发某些内容,则不应将其放在
$(document).ready(on_ready\u func)
中。加载DOM后,在加载页面内容之前,将立即加载其中的所有内容
相反,从on_ready_func cherry选择要手动触发的内容到另一个函数中,比如manual_func,并在您选择的事件中调用该函数
请注意,ready
函数不能使用触发器触发,因此不能再次触发func,除非将其作为单独的函数使用
分开是你最好的选择
var manual_func = function(){
// Manual loads
}
var on_ready_func = function(){
// only things to be loaded on dom ready
// e.g.
$('button#load_manual_trigger').bind('click', manual_func);
}
$(document).ready(on_ready_func);
愉快的编码。但如何防止原始事件触发?据我所知,e.preventDefault()在这种情况下是不可能的。当你不想在dom Ready上触发任何事件时,那么为什么要在
Ready
中编写呢?我基本上是在试图避免重写当前依赖dom Ready事件的大量现有脚本。我希望有某种方法可以拦截它,并在以后手动触发它。