对AJAX技术的理解,创建,与应用
ajax的理解: 1. ajax是介于客户端与服务器端之间的一个机制,但这一机制是在前台的,利用前台的闲置功能,来进行前台与后台的数据交流,以达到增强用户体检,减少服务器压力,更有效的利用带宽的效果。 2. ajax是采用异步交互的机制。 3. ajax使用于页面局部刷新,按需求验证和取数据。 4. ajax缺点便是浏览器的兼容问题麻烦,与嵌入式移动端对ajax的支持不太理想。 5.ajax已经是一种web开发必备的技术,而且其优点远大于缺点。 6.ajax涉及到的主要技术有7种其中Javascript、XMLHttpRequest、DOM、XML为重点。 7. XMLHttpRequest对象 XMLHttpRequest是XMLHTTP组件的对象,通过这个对象,AJAX可以像桌面应用程序 一样只同服务器进行 数据层面的交换,而不用每次都刷新界面,也不用每次将数据处 理的工作都交给服务器来做;这样既减轻 了服务器负担又加快了响应速度、缩短了用 户等待的时间。 Javascript Javascript一直被定位为客户端的脚本语言,应用最多的地方是表单数据的校验。现在 可以通过Javascript 操作XMLHttpRequest,来跟数据库打交道。 DOM DOM(Document Object Model)是提供给HTML和XML使用的一组API,提供了文件的 表述结构,并可以利用它改变其中的内容和可见物。脚本语言通过DOM才可以跟页面进 行交互。Web开发人员可操作及建立文件的属性、方法以及事件都以对象来展现。比如, document就代表页面对象本身。 XML 通过XML(Extensible Markup Language),可以规范的定义结构化数据,是网上传输的 数据和文档符合统一的标准。用XML表述的数据和文档,可以很容易的让所有程序共享。 考虑兼容性: 1.浏览器分为IE与非IE,其中非IE是遵循W3C标准的,创建方式基本相同,而IE不一样,其每个版本创建的方式也有所不同。 2.创建ajax </pre><pre name="code" class="php"><script> function createAjax(){ var request=false; //window对象中有XMLHttpRequest存在就是非IE,包括(IE7,IE8) if(window.XMLHttpRequest){ request=new XMLHttpRequest(); 有些浏览器是需要覆盖eMimeType if(request.overrideMimeType){ request.overrideMimeType("text/xml");//指定文本类型 } //window对象中有ActiveXObject属性存在就是IE }else if(window.ActiveXObject){ //将IE各个版本的浏览器的参数放在一个数组里面 var versions=['Microsoft.XMLHTTP','MSXML.XMLHTTP','Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0','Msxml2.XMLHTT4.0','MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP']; //遍历这个数组,确定是那个版本,进行对应AJAX的创建 for(var i=0; i<versions.length; i++) { try{ request=new ActiveXObject(versions[i]); if(request){return request;} }catch(e){ request=false; } } } return request; } var ajax=createAjax();//创建AJAX alert(ajax);测试 </script> ajax的对象的方法与属性 1. XMLHttpRequest对象的属性: onreadystatechange状态改变的事件触发器 2. XMLHttpRequest对象的方法: abort()停止当前请求 getAllResponseHeaders()作为字符串返回完整的headers getResponseHeader("headerLabel")作为字符串返回单个的header标签 open("method","URL"[,asyncFlag[,"userName"[,"password"]]])设置未决的请求的目标 URL,方法,和其他参数 send(content) 发送请求 setRequestHeader("label","value")设置header并和请求一起发送 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |