我有这个功能:
$("#loading_button").click(function(){
(function() {
var s = document.createElement("script");
s.type = "text/javascript";
s.async = true;
s.src = '//some_src/';
var x = document.getElementsByTagName('script')[0];
s.onload = function() {
alert("OK");
$('#my_button').trigger('click');
};
x.parentNode.insertBefore(s, x);
})();
});
有了警报,一切正常。会自动单击src脚本中的#my_button。问题是,一旦我删除了alert()触发器,就不再调用click触发器。
知道为什么吗?
最佳答案
尽量不要直接调用您的代码,而是将其绑定到document.ready;
$(document).ready(function(){ // <-- look here
var s = document.createElement("script");
s.type = "text/javascript";
s.async = true;
s.src = '//some_src/';
var x = document.getElementsByTagName('script')[0];
s.onload = function() {
alert("OK");
$('#my_button').trigger('click');
};
x.parentNode.insertBefore(s, x);
}); // <-- and here