导读:
使用JS调用xmlHttp读取远端文件,
实现不刷新网页更新内容,
如果用户浏览器是IE的话,我们习惯使用下面的方式:
var xmlDom = new ActiveXObject("Microsoft.XMLHTTP"); var strData = "code=123"; xmlDom.open("POST", "default.asp",false); xmlDom.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xmlDom.send(strData);
但,如果客户端是FireFox,这段代码就不能使用了
因为FireFox不支持:ActiveXObject
在FireFox中,必须使用下面的方式才行:
new XMLHttpRequest()
其实针对IE,有人也会使用:
new ActiveXObject("Msxml2.XMLHTTP")
不过这就要看客户端浏览器支持的xmlHttp是什么版本了。
所以为了让大多数浏览器都可以使用,
一般的想法是现判断浏览器的种类,然后建立相应的对象,
不过查看Google的源码,
他用了更巧妙的 try/catch 方法:
function jb() { var A=false; try { A=new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { A=new ActiveXObject("Microsoft.XMLHTTP"); } catch(oc) { A=false; } } if ( !A &&typeof XMLHttpRequest != "undefined" ) { A=new XMLHttpRequest(); } return A; }
这样,在使用时,只要这样调用就可以了:
var xmlDom = jb(); var strData = "code=123"; xmlDom.open("POST", "default.asp", false); xmlDom.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xmlDom.send(strData);
[Last Modified By todd, at 2005-07-20 13:08:48]
Comments Feed:http://www.todd-lee.com/blog/feed.asp?q=comment&id=63
本文转自
http://www.todd-lee.com/blog/article.asp?id=63
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/abigfrog/archive/2007/10/19/1831956.aspx