1 var province = '' ; 2 var city = '' ; 3 jQuery.getScript("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js",function(){ 4 province = remote_ip_info["province"]; 5 city = remote_ip_info["city"]; 6 alert(city) 7 }) ;
jQuery.getScript()
函數用於通過HTTP GET形式的加載JavaScript文件並運行它。
該函數用於動態加載JS文件,並在全局作用域下執行文件中的JS代碼。
該函數可以加載跨域的JS文件。請注意,該函數是通過異步方式加載數據的。
該函數屬於全局jQuery
對象。
注意:如果多次加載相同URL的js文件,即使服務器對js文件啟用了緩存,在第二次及以后加載該js文件時,jQuery.getScript()
仍然不會緩存。因為該函數會在js文件的URL后面添加一個時間戳參數后綴,從而避免瀏覽器獲取緩存的js文件。
// 加載並執行js文件:http://www.365mini.com/static/js/jquery-util.js
$.getScript( "http://www.365mini.com/static/js/jquery-util.js" );
// 第二次加載並執行js文件:http://www.365mini.com/static/js/jquery-util.js
$.getScript( "http://www.365mini.com/static/js/jquery-util.js" );
getScript()會加上時間戳避免js緩存
此外,請注意不要直接在jQuery.getScript()
執行后直接調用該js文件中的變量或函數,因為jQuery.getScript()
是異步加載的,在你訪問其中的某個變量或函數時,可能該js文件尚未完全加載完畢。
建議你最好在success
回調函數中處理,或者你能夠確認此時該js文件已經加載完畢。