动态调用js,动态指定src
[ 2014-05-26 14:30:55 | 作者: admin ]
js中的document.write会忽略掉,所以尽量使用如下的方式:
1、先定义好处理函数 window.baidu.sug=function(data){alert(data.s)}
2、然后在传递过来的内容中定义一个函数的调用 window.baidu.sug(...)
说明:对于动态创建的js 引用而言 ,针对不同的浏览器有不同的反应
如果调用 load_script("jquery.js") 对 FF Opera 而言 load 方法是阻塞的 故alert($)能输出,而对IE Chrome Safria 而言 是非阻塞的 所以就会报错
而document.write的方式,对所有浏览器而言都是阻塞的 即同步的 所以alert($)会输出正确结果
其中http://suggestion.baidu.com/su?wd=w获取的内容为:
1、先定义好处理函数 window.baidu.sug=function(data){alert(data.s)}
2、然后在传递过来的内容中定义一个函数的调用 window.baidu.sug(...)
说明:对于动态创建的js 引用而言 ,针对不同的浏览器有不同的反应
如果调用 load_script("jquery.js") 对 FF Opera 而言 load 方法是阻塞的 故alert($)能输出,而对IE Chrome Safria 而言 是非阻塞的 所以就会报错
而document.write的方式,对所有浏览器而言都是阻塞的 即同步的 所以alert($)会输出正确结果
<script>
window.baidu={};
window.baidu.sug=function(data){alert(data.s)}
load_script('http://suggestion.baidu.com/su?wd=w',function(){alert('loaded')});
function load_script(url, callback) {
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
script.onload = script.onreadystatechange = function() {
if ((!this.readyState || this.readyState === "loaded" || this.readyState === "complete")) {
callback && callback();
script.onload = script.onreadystatechange = null;
if (head && script.parentNode) {
head.removeChild(script);
}
}
};
head.insertBefore(script, head.firstChild);
}
</script>
window.baidu={};
window.baidu.sug=function(data){alert(data.s)}
load_script('http://suggestion.baidu.com/su?wd=w',function(){alert('loaded')});
function load_script(url, callback) {
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
script.onload = script.onreadystatechange = function() {
if ((!this.readyState || this.readyState === "loaded" || this.readyState === "complete")) {
callback && callback();
script.onload = script.onreadystatechange = null;
if (head && script.parentNode) {
head.removeChild(script);
}
}
};
head.insertBefore(script, head.firstChild);
}
</script>
其中http://suggestion.baidu.com/su?wd=w获取的内容为:
window.baidu.sug({q:"w",p:false,s:["wps","wwe","word","win7旗舰版","we","win7 64位旗舰版下载","wwe美国职业摔角","www.taobao.com","微博","word转pdf"]});
[最后修改由 admin, 于 2014-05-26 14:48:28]
评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2205
这篇日志没有评论。
此日志不可发表评论。