我只需要在页面准备好后检查一些外部JS文件是否已加载。
有可能吗?我想如下。
//get the number of `<script>` elements that have the correct `src` attribute
var len = $('script').filter(function () {
return ($(this).attr('src') == '<external JS>');
}).length;
//if there are no scripts that match, the load it
if (len === 0) {
$.getScript('<external JS>');
}
在上面的代码中,我是否需要提供加载外部JS的完整路径而不是'<external JS>'
?
谢谢!
答案 0 :(得分:0)
我使用以下JS代码来检查JQuery Script是否完全加载到我的html文件中。
函数有3个参数,脚本URL,成功回调函数,错误回调函数
//Parameters - script URL, Callback on Complete, Error Callback
function loadScript(sScriptSrc, oCallback, oErrorback) {
var oScript = document.createElement('script');
oScript.type = 'text/javascript';
oScript.src = sScriptSrc;
// most browsers
if (oCallback) {
oScript.addEventListener("load", oCallback);
}
if (oErrorback) {
oScript.addEventListener("error", oErrorback);
}
// IE
oScript.onreadystatechange = function() {
if (this.readyState == 'complete') {
if (oCallback) {
oCallback();
}
}
}
document.body.appendChild(oScript);
}
//USAGE
var jQscr = 'https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js';
function successJQLoad() {
//Successful Loading Callback, Move ahead Code
}
function errorJQLoad() {
//Error Callback
}
//Call function with appropriate parameters
loadScript(jQscr, successJQLoad, errorJQLoad);
&#13;