javascript - .getScript() callback for multiple usage -
if have 2 js files a.js , b.js
a.js
$.getscript('some.js',function(){ //call function in some.js }); in file b.js, call function some.js, how know some.js loaded ?
can like.. (in b.js)
somejsisloaded.then(function(){ //call function in some.js }); .then() .promise() ?
$.getscript() returns jqxhr promise, can assigned later use.
you write ...
var somejspromise = $.getscript('some.js', function() { //call function in some.js }); ... it's better not use global namespace, use jquery namespace :
$.somejspromise = $.getscript('some.js', function() { //call function in some.js }); in case script 'some.js' doesn't load, should include error handling. @ least, log error :
$.somejspromise = $.getscript('some.js', function() { //call function in some.js }).then(null, function(error) { console.log('getscript(some.js)', error); }); thereafter, safe way run script delivered in "some.js", use assigned promise's .then() method :
$.somejspromise.then(function() { //call function in some.js }, function() { //handle case some.js fails load. }); if some.js has loaded, callback run immediately.
if some.js not yet loaded, callback queued, , run if/when some.js loads.
if some.js has failed (or fail), error handler run.
Comments
Post a Comment