>

XMLHTTP多浏览器包容性写法,数据央求的归纳剖析

- 编辑:www.bifa688.com -

XMLHTTP多浏览器包容性写法,数据央求的归纳剖析

复制代码 代码如下:

比如:

var xmlhttp=null; 
if (window.XMLHttpRequest) { 
xmlhttp = new XMLHttpRequest(); 

if (!xmlhttp&&window.ActiveXObject) 

    try 
    { 
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.5.0") 
    } 
    catch(e) 
    { 
        try 
        { 
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.4.0") 
        } 
        catch(e) 
        { 
            try 
            { 
                new ActiveXObject("Msxml2.XMLHTTP") 
            } 
            catch(e) 
            { 
                try{new ActiveXObject("Microsoft.XMLHTTP")}catch(e){} 
            } 
        } 
    } 

if(!xmlhttp){alert("XMLHTTP不可用。就要跳转到非Ajax页面。");location="nonAjax.htm"}

复制代码 代码如下:

代码如下: varxmlhttp=null; if(window.XMLHttpRequest){ xmlhttp=newXMLHttpRequest(); } if(!xmlhttpwindow.ActiveXObject) { try { xmlhttp=newActiveXObject("Msxml2.XMLH...

function xmlHttpR(){
var xmlhttp;
if(window.XMLHttpRequest){
xmlhttp=new XMLHttpRequest();
}
else{
try{xmlhttp=new ActiveXObject("Msxml2.XMLHTTP")}
catch(e){
try{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){return null;
}
}
return xmlhttp;

如此那般就多数能创造一个跨浏览器的指标了;
上面是ajax的粗略利用,利用XmlHttpRequest对象达成;

复制代码 代码如下:

var ajaxEl=new Object();
//ajaxEl是自定义的命名空间;
ajaxEl.contentLoad=function(url){
//IE浏览器下,会启用缓存,这里url插手date字段就是为着防止IE使用缓存,当然也得以行使Math.random()爆发和getTime类似的意义;
url ="?date=" new Date().getTime();
this.req=null;
this.url=url;
//那些回调函数就是在数据在页面上的翻新函数;
this.onload=function(){
//domEl是ID为#test的dom元素;
var domEl=document.getElementById("test");
//除了用responseText属性,也可以运用responseXml获得一张数据表;
domEl.innerHTML=this.req.responseText;
}
this.Xmlhttp(url);
}
ajaxEl.contentLoad.prototype={
Xmlhttp:function(url){
if(window.XMLHttpRequest){
this.req=new XMLHttpRequest();
}
else{
try{this.req=new ActiveXObject("Msxml2.XMLHTTP")}
catch(e){
try{this.req=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){return null;
}
}
}
if(this.req){
var xmlR=this;
this.req.onreadystatechange=function(){
if(xmlR.req.readyState===4){
xmlR.onload.call(xmlR);
}
}
this.req.open("GET",url,true);
this.req.send(null);
}
}
}
var xmlE=new ajaxEl.contentLoad("main.php");

main.php里面,作者这里安装的比较轻松的示范代码:在页面上就能够显得两个近乎:now! time is:05:18:10 am 二〇一三,那样可动态变化的小时。

复制代码 代码如下:

echo "now! time is:".date("H:i:s a Y");

复制代码 代码如下: function xmlHttpTiggo(){ var xmlhttp; if(window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest(); } else{ try{xmlhttp=new ActiveXObject("Msxml2.XMLHTTP...

本文由必发88官网发布,转载请注明来源:XMLHTTP多浏览器包容性写法,数据央求的归纳剖析