判断jquery是否已经加载,如果没有动态加载

时间:2022-12-05 16:45:39

方法一:

// Only do anything if jQuery isn't defined
if (typeof jQuery == 'undefined') { if (typeof $ == 'function') {
// warning, global var
thisPageUsingOtherJSLibrary = true;
} function getScript(url, success) { var script = document.createElement('script');
script.src = url; var head = document.getElementsByTagName('head')[0],
done = false; // Attach handlers for all browsers
script.onload = script.onreadystatechange = function() { if (!done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete')) { done = true; // callback function provided as param
success(); script.onload = script.onreadystatechange = null;
head.removeChild(script); }; }; head.appendChild(script); }; getScript('http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js', function() { if (typeof jQuery=='undefined') { // Super failsafe - still somehow failed... } else { // jQuery loaded! Make sure to use .noConflict just in case
fancyCode(); if (thisPageUsingOtherJSLibrary) { // Run your jQuery Code } else { // Use .noConflict(), then run your jQuery Code } } }); } else { // jQuery was already loaded // Run your jQuery Code }; //该代码片段来自于: http://www.sharejs.com/codes/javascript/4281

方法二:document.write

var jQueryScriptOutputted = false;
function initJQuery() { //if the jQuery object isn't available
if (typeof(jQuery) == 'undefined') { if (! jQueryScriptOutputted) {
//only output the script once..
jQueryScriptOutputted = true; //output the script (load it from google api)
document.write("<scr" + "ipt type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></scr" + "ipt>");
}
setTimeout("initJQuery()", 50);
} else { $(function() {
// do anything that needs to be done on document.ready
// don't really need this dom ready thing if used in footer
});
} }
initJQuery();
//该代码片段来自于: http://www.sharejs.com/codes/javascript/4281