我需要动态地通过$ .getScript包含一个脚本。
但问题是,不会执行动态包含脚本中的$(document).ready函数。 (他们动态插入不会在dom准备就绪时发生)
有没有办法强迫它这样做?举例来说,伪造一个document.ready事件?
谢谢, 韦斯利
答案 0 :(得分:4)
答案 1 :(得分:1)
通过$.getScript()
定义的新处理程序缺少document.ready事件是有道理的,因为文档的DOM早先加载了。
您是否尝试$(document).trigger('ready')
重新触发该事件?当然,之前注册的所有事件处理程序都会再次被调用。
答案 2 :(得分:0)
在你的包含文件中,将初始化移到另一个函数并从那里调用它:
//include js:
$(document).ready(initialise);
function initialise(){
}
在加载此文件的文件中,您只需调用initialise
触发准备就绪的主题已在SO上完全涵盖:
How to trigger $().ready() in jQuery?
Trigger $document.ready (so AJAX code I can't modify is executed)