我通过以下方式动态加载javascript。
function loadjscssfile(filename, filetype){
if (filetype=="js"){ //if filename is a external JavaScript file
var fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript")
fileref.setAttribute("src", filename)
}
else if (filetype=="css"){ //if filename is an external CSS file
var fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet")
fileref.setAttribute("type", "text/css")
fileref.setAttribute("href", filename)
}
if (typeof fileref!="undefined")
document.getElementsByTagName("head")[0].appendChild(fileref)
}
loadjscssfile("myscript.js", "js") //dynamically load and add this .js file
此示例取自http://www.javascriptkit.com/javatutors/loadjavascriptcss.shtml
现在问题是在调用js函数
之后loadjscssfile("myscript.js", "js")
我想跟踪它是否已加载。因为我想在加载的文件中调用一个函数。感谢您的帮助。
答案 0 :(得分:1)
您可以使用try / catch语句,如果调用缺少的函数(在try中),则不会出现错误。如果需要,在catch中放置一个异常处理程序。
答案 1 :(得分:0)
除了try / catch方法之外,您还可以创建一些可以测试是否存在间隔的内容,直到您捕获脚本为止:
var myCheck = setInterval(function {
if (typeof(myFunc) == 'function') {
clearInterval(myCheck);
// Anything else here with your script.
}
}, 100);