JS-封装 ajax XmlHttpRequest
来源:互联网 发布:淘宝店铺怎样装修视频 编辑:程序博客网 时间:2024/05/23 19:12
//定义一个对象 - 名字是$var $$ = function() {};//第二种写法$$.prototype = { $id:function(id){ return document.getElementById(id) }, $tag:function(tag) { return document.getElementsByTagName(tag) }, //ajax - 前面我们学习的 myAjax:function(URL,fn){ var xhr = createXHR(); //返回了一个对象,这个对象IE6兼容。 xhr.onreadystatechange = function(){ if(xhr.readyState === 4){ if(xhr.status >= 200 && xhr.status < 300 || xhr.status == 304){ fn(xhr.responseText); }else{ alert("错误的文件!"); } } }; xhr.open("get",URL,true); xhr.send(); //闭包形式,因为这个函数只服务于ajax函数,所以放在里面 function createXHR() { //本函数来自于《JavaScript高级程序设计 第3版》第21章 if (typeof XMLHttpRequest != "undefined") { return new XMLHttpRequest(); } else if (typeof ActiveXObject != "undefined") { if (typeof arguments.callee.activeXString != "string") { var versions = ["MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp" ], i, len; for (i = 0, len = versions.length; i < len; i++) { try { new ActiveXObject(versions[i]); arguments.callee.activeXString = versions[i]; break; } catch (ex) { //skip } } } return new ActiveXObject(arguments.callee.activeXString); } else { throw new Error("No XHR object available."); } } }, //随机数 random: function (begin, end) { return Math.floor(Math.random() * (end - begin)) + begin; }}//在框架中实例化,这样外面使用的使用就不用实例化了$$ = new $$();
阅读全文
0 0
- JS-封装 ajax XmlHttpRequest
- 用JS封装AJAX请求 XMLHttpRequest (面试前记得复习)
- js与ajax- XMLHttpRequest
- Ajax应用示例: XMLHttpRequest封装
- js原生创建封装ajax的方法,附XMLHttpRequest状态码
- jquery ajax与js XMLHttprequest
- 对AJAX中XMLHttpRequest的封装
- Ajax之工厂模式封装XMLHttpRequest
- XmlHttpRequest CORS 与 AJAX封装类
- 一个ajax通用函数(xmlhttprequest封装)
- 【Ajax 2】封装Ajax的核心对象:XMLHttpRequest对象
- Ajax技术之Ajax重构(封装XMLHttpRequest)
- Js中的Ajax XMLHttpRequest的创建
- 原生js使用xmlhttpRequest实现ajax请求
- Ajax的js封装
- 原生js封装Ajax
- js 封装ajax
- js 封装ajax
- Git忽略文件-gitignore
- HTML5文件拖拽
- 有1,2,3,4四个数字,能组成多少个互不相同且无重复数字的三位数 都是多少
- JS-JSON和字符串互相转换-将字符串转换成对象-对象转换成字符串
- 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛-A. Banana
- JS-封装 ajax XmlHttpRequest
- PHP性能:序——谈ab(Apache Bench)压力测试工具
- hibernate初学笔记3《2017-09-09》
- numpy —— numpy.ravel() vs numpy.flatten()
- JS计算天数差
- 【javascript】谈谈HTML5 ——HTML兽进化, H5兽!
- java之正则表达式、日期操作
- system verilog中不可不小心的陷阱
- JS判断设备-检查手机系统-检测系统