Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Load jQuery dynamically

I am having issues with loading jQuery with Javascript. I need to load it with Javascript because there are conditions that I only can know client-side. The commented out code is supposed to initialize the scripts, but I am having no luck with them.

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/

This is the site that the problems are on.

like image 780
Luke James Emery Avatar asked Jun 26 '12 17:06

Luke James Emery


People also ask

How do I load jQuery into JavaScript?

To add jQuery and JavaScript to your web pages, first add a <script> tag that loads the jQuery library, and then add your own <script> tags with your custom code.

Can I write jQuery in JavaScript file?

Your JavaScript file ( scripts. js ) must be included below the jQuery library in the document or it will not work. Note: If you downloaded a local copy of jQuery, save it in your js/ folder and link to it at js/jquery. min.

What is jQuery load function?

The jQuery load() method is a simple, but powerful AJAX method. The load() method loads data from a server and puts the returned data into the selected element.

Which code is used to load the framework of jQuery from the site of jQuery?

var script = document. createElement('script'); script. src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'; script. type = 'text/javascript'; document.


1 Answers

From the 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/
});​
like image 53
Calvein Avatar answered Sep 23 '22 15:09

Calvein