这是脚本:
$("#button").click(function(){
$.getScript('script.js', function(){
script.init();
});
});
我希望能够像上面的示例一样运行 script.init(),但是如果我这样做,我必须单击两次按钮才能获取脚本。- 当它第一次运行 script.init() 时,它似乎还没有加载。
那么,在我对它做某事之前,如何确保脚本已经加载呢?
尝试这个:
$(window).load(function() {
$.getScript('script.js', function() {
$("#button").click(function() {
script.init();
});
});
});
或者,尝试使用 jQuery.ajax 函数而不是简写:
$("#button").click(function () {
$.ajax({
url: "script.js",
dataType: "script",
success: function () { script.init(); }
});
});
当函数名是字符串时,我使用此代码调用函数。
$.ajax({
url: 'script.js',
dataType: "script",
success: function () { window["script"]["init"](); }
});
您还可以将按钮传递给您正在调用的函数。
$.ajax({
url: 'scrpt.js',
dataType: "script",
context : this,
success: function () { window["script"]["init"](this); }
});