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文件已经加载完毕。