悲剧的IE6怎么都不支持啊,是不是我少打补丁了。。还是什么插件没装

yusaint 发布于 2010/11/12 21:09
阅读 302
收藏 1

function createXMLHttpRequest()
{
	
	if(window.ActiveXobject)
	{
		var xmlHttps=["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp4.0",
"MSXML2.XMLHttp3.0","MSXML2.XMLHttp","Microsoft.XMLHTTP"];
		for(var i=0;i<xmlHttps.length;i++)
		{
		try{
	var xmlHttp_loginCheck=new ActiveXObject(xmlHttps[i]);
	
			}catch(error){
}
		}
	}
	else if(window.XMLHttpRequest)
	{
		xmlHttp=new XMLHttpRequest();
	}
	
	
}
请教,这段代码估计把IE的各种版本的Ajax兼容都考虑进去了,为啥一运行IE6还是提示无法创建xmlHttp对象呢。。。望牛人指教。。
加载中
0
xyz555
xyz555

代码逻辑就不对。

for循环不具被跳出功能。

最后一定执行的是var xmlHttp_loginCheck = new ActiveXObject(xmlHttps[“Microsoft.XMLHTTP”]);

要在成功创建xmlHttp_loginCheck后返回。

0
yusaint
yusaint

o ...我这大意了。。thanks

0
沙逛鱼
沙逛鱼

function createXMLHttpRequest()
{
	var xmlHttp = null;
	if(window.XMLHttpRequest)
	{
		xmlHttp=new XMLHttpRequest();
	}
	else
	{
		var xmlHttps=["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp4.0","MSXML2.XMLHttp3.0","MSXML2.XMLHttp","Microsoft.XMLHTTP"];
		for(var i=0;i<xmlHttps.length;i++)
		{
			try{
				xmlHttp = new ActiveXObject(xmlHttps[i]);
			}catch(error){
			}
			
			if(xmlHttp)break;
		}
		
	}
	return xmlHttp;
}
0
yusaint
yusaint

貌似改了以后也不能运行哦。。。

0
xyz555
xyz555

if(window.ActiveXobject)判断不对,ie下不执行。

0
酱油他哥
酱油他哥

function createXMLHTTP()
{
    if(window.XMLHttpRequest)
    {
        xmlHttp=new XMLHttpRequest();//mozilla浏览器
    }
    else if(window.ActiveXObject)
    {
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");//IE老版本
        }
        catch(e)
        {}
        try
        {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");//IE新版本
        }
        catch(e)
        {}
        if(!xmlHttp)
        {
            window.alert("不能创建XMLHttpRequest对象实例!");
            return false;
        }
    }
}

0
xyz555
xyz555

if(window.ActiveXobject)应该是if(window.ActiveXObject)

返回顶部
顶部