【发布时间】:2012-08-20 10:36:21
【问题描述】:
我写了一些代码来获取html源代码,但它只适用于IE8,但不适用于mozila和chrome,是什么问题,请给我建议。 我的代码
<script>
function processStateChange() {
statusDiv = document.getElementById("stats");
if (req.readyState == 0) { statusDiv.innerHTML = "UNINITIALIZED"; }
if (req.readyState == 1) { statusDiv.innerHTML = "LOADING"; }
if (req.readyState == 2) { statusDiv.innerHTML = "LOADED"; }
if (req.readyState == 3) { statusDiv.innerHTML = "INTERACTIVE"; }
if (req.readyState == 4) {
statusDiv.innerHTML = "COMPLETE";
statusDiv.innerHTML = req.responseText;
}
}
function GetXmlHttpObject() {
if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
} if (window.ActiveXObject) { // code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
} return null;
}
//req = new XMLHttpRequest("Msxml2.XMLHTTP");
req = GetXmlHttpObject();
debugger;
if (req) {
req.onreadystatechange = processStateChange;
req.open("GET", "http://whatismyipaddress.com/", true);
req.send();
}
</script>
我检查以调试代码 IE 完全在循环中工作(req.readystate==4 以最终获得响应文本)但 mozila 或 chromes 仅在工作循环中(req.readystate==2 在中止循环后),什么问题,请给我一些建议,使用jquery或java脚本来解决问题
谢谢你 赫曼斯
【问题讨论】:
-
你不使用像
jQuery这样的库有什么原因吗? -
@MihaiIorga 不相关
-
@hmk 你检查过 js 控制台吗?没有错误吗?
-
在 jsfiddle 中尝试,我得到这个:“XMLHttpRequest 无法加载 whatismyipaddress.com。访问控制允许来源不允许来源 fiddle.jshell.net。”
-
请举个例子
标签: javascript jquery url cross-browser xmlhttprequest