2012-06-26 17 views
8

Ich habe Probleme mit dem Laden von jQuery mit Javascript. Ich muss es mit Javascript laden, weil es Bedingungen gibt, die ich nur clientseitig kennen kann. Der auskommentierte Code soll die Skripte initialisieren, aber ich habe kein Glück mit ihnen.Laden Sie jQuery dynamisch

var script_tag = document.createElement('script'); 
script_tag.setAttribute("type","text/javascript"); 
script_tag.setAttribute("src","http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js") 
//script_tag.onload = main; // Run main() once jQuery has loaded 
//script_tag.onreadystatechange = function() { // Same thing but for IE 
    //if (this.readyState == 'complete' || this.readyState == 'loaded') main(); 
//} 
document.getElementsByTagName("head")[0].appendChild(script_tag); 

http://mybsabusiness.com/samplesites/silver/sbsa01/

Dies ist die Website, die die Probleme auf sind.

+1

erhalten Sie alle Fehler? Was macht 'main'? – Esailija

+2

Was genau ist das Problem? Dieser Code funktioniert einwandfrei. http://jsfiddle.net/4Euhk/ – sachleen

+0

Zeigen Sie uns auch die Hauptfunktion, dieser Code funktioniert für mich –

Antwort

16

Vom jQuerify bookmarlet:

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; 
     success(); 
     script.onload = script.onreadystatechange = null; 
     head.removeChild(script); 
     } 
    }; 
    head.appendChild(script); 
} 
getScript('http://code.jquery.com/jquery-latest.min.js',function() { 
    // Yay jQuery is ready \o/ 
});​ 
+0

Einfach perfekt! Danke Kumpel –