我的问题我的网页存在问题,其中100个页面加载中的1个给出了“未定义未定义”错误。此错误是由jquery插件在实际加载之前初始化引起的。我目前的解决方案是使用window.load,它可以很好地工作,但可以在1秒到无穷大的任何时间内取决于长期的共享者决定加载(并且它比addthis更快)。
我的问题是否有一些方法可以在插件加载后初始化插件,例如成功事件或包含插件的内容?我找不到任何东西。
希望这对其他遇到此问题的人也有用。
答案 0 :(得分:1)
你可以试试这个:
$.ajax({
url: pluginUrl,
dataType: "script",
success: initializePlugin
});
或仅$.getScript()
答案 1 :(得分:1)
听起来你需要等待一个与DOM无关的特定事件,但这与你的代码执行方式有关。我发现jQuery能够为此目的发起自定义事件。
e.g:
//start of script - do some asynchronous work
$.ajax({})
.done(function() {
//ready to initialize the plugin - trigger an event
$(document).trigger('initializeMyPlugin');
});
//listen for the event and initialize your plugin when it is fired
$(document)
.on('initializeMyPlugin',function() {
// initialization code
});