I am trying to only load jquery and jqueryui if they do not already exist. If they do exist, then I load a bunch of plug-ins used by the app. However, the below is not working and I have no idea why. Can anyone provide some insight?
if (typeof jQuery == 'undefined') { console.log("loading local jquery files"); var head = document.getElementsByTagName("head")[0]; var script = document.createElement("script"); script.type = "text/javascript"; script.src = "/cml/js/jquery.min.js"; script.onload = loadPlugins(); head.appendChild(script); var script2 = document.createElement("script"); script2.type = "text/javascript"; script2.src = "/cml/js/jquery-ui.min.js"; head.appendChild(script2); } function loadPlugins(){ if(typeof jQuery != 'undefined'){ console.log("jquery is defined"); jQuery.noConflict(); //load the plugins if(!jQuery().maxlength){ jQuery("head").append('<scr' + 'ipt type="text/javascript" src="< %=response.encodeURL(cntxPath + "/js/jquery.maxlength-min.js")%>"></ scr' + 'ipt>'); console.log("loaded maxlength plugin"); } if(!jQuery().address){ jQuery("head").append('<scr' + 'ipt type="text/javascript" src="< %=response.encodeURL(cntxPath + "/js/jquery.address-1.1.min.js")%>"></ scr' + 'ipt>'); console.log("loaded address plugin"); } if(!jQuery().delay){ jQuery("head").append('<scr' + 'ipt type="text/javascript" src="< %=response.encodeURL(cntxPath + "/js/jquery.delay.js")%>"></scr' + 'ipt>'); console.log("loaded delay plugin"); } if(!jQuery().ajaxSubmit){ jQuery("head").append('<scr' + 'ipt type="text/javascript" src="< %=response.encodeURL(cntxPath + "/js/jquery.form.js")%>"></scr' + 'ipt>'); console.log("loaded form plugin"); } .... Thanks everyone.