Ajax中创建XMLHttpRequest对象的时候,为了兼容不同的浏览器,总是需要写不少的代码。下面采用一种更高效的工厂模式把定义XMLHttpRequest对象的功能进行封装,这样只需要调用createXMLRequestObject()方法就可以根据当前的浏览返回一个XMLHttpRequest对象。
1 function createXMLRequestObject(){ 2 //创建兼容不同浏览器和版本函数数组 3 var XMLHttpFactories = [ 4 function(){return new XMLHttpRequest()}, 5 new ActiveXObject("Msxml2.XMLHTTP")},128)"> 6 new ActiveXObject("Msxml3.XMLHTTP" 7 new ActiveXObject("Microsoft.XMLHTTP")} 8 ]; 9 var xmlhttp =false; 10 尝试调用一种定义函数,如果成功则返回,否则继续下一种进行尝试 11 for(var i =0;i<XMLHttpFactories.length;i++){ 12 try 13 { 14 xmlhttp = XMLHttpFactories[i](); 15 } 16 catch () 17 18 异常则继续下一个函数调用 19 continue20 21 成功则中止循环 22 break23 24 return xmlhttp; 25 }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。