Ajax中封装创建XMLHttpRequest对象的方法
发布时间:2020-12-15 20:57:56 所属栏目:百科 来源:网络整理
导读:Ajax中创建XMLHttpRequest对象的时候,为了兼容不同的浏览器,总是需要写不少的代码。下面采用一种更高效的工厂模式把定义XMLHttpRequest对象的功能进行封装,这样只需要调用createXMLRequestObject()方法就可以根据当前的浏览返回一个XMLHttpRequest对象。
Ajax中创建XMLHttpRequest对象的时候,为了兼容不同的浏览器,总是需要写不少的代码。下面采用一种更高效的工厂模式把定义XMLHttpRequest对象的功能进行封装,这样只需要调用createXMLRequestObject()方法就可以根据当前的浏览返回一个XMLHttpRequest对象。 1 function createXMLRequestObject(){ 2 //创建兼容不同浏览器和版本函数数组 3 var XMLHttpFactories = [ 4 function(){return new XMLHttpRequest()}, 5 function(){return new ActiveXObject("Msxml2.XMLHTTP")}, 6 function(){return new ActiveXObject("Msxml3.XMLHTTP")}, 7 function(){return 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 continue; 20 } 21 //成功则中止循环 22 break; 23 } 24 return xmlhttp; 25 } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- swift – 将时间戳作为“时间戳”保存到Firestore中是否正常
- ruby-on-rails – 任何聪明的解决方法都可以避免在任何地方
- 闪回查询与闪回表(Flashback Query、Flashback Table)
- cocos2dx android SDK接入总结
- reactjs – React:单独留下组件的内容
- c – 对于uint32_t和其他stdint类型,atoi或strtoul相当于什
- 使用React进行组件库开发
- 使用XSLT从XML检索所有属性值
- c – 通过迭代器进行basic_string转换是否合法?
- ruby-on-rails – Ruby on Rails:使用一个表单和一个提交为