实习--(八)Ajax、dom与jQuery

来源:互联网 发布:台湾炒股软件 编辑:程序博客网 时间:2024/06/05 10:37

    最近一段时间在学js,如题所说的Ajax、dom与jQuery。其实也只是略为了解了,并没有怎么练习。先说说dom编程。

     DOM实际上是以面向对象方式描述的文档模型。DOM定义了表示和修改文档所需的对象、这些对象的行为和属性以及这些对象之间的关系。可以把DOM认为是页面上数据和结构的一个树形表示,不过页面当然可能并不是以这种树的方式具体实现。通过 JavaScript,您可以重构整个 HTML 文档。您可以添加、移除、改变或重排页面上的项目。实际上整个js都是基于对象的,当我们要改变网页的某部分结构时,通过基本对象找到入口,然后对对象进行更改。被认为是动态的网页技术。

浏览器对象树:


HTML dom结构如下:


这些对象构成了节点树,每个节点都对应着属性和方法。像:nodeName,nodeType,firstCh'ild ,attibutes,replaceChild······等属性方法。节点的更改就是通过更改这些属性方法达到动态效果。

Ajax就是通过这样的树形操作达到异步传输的局部刷新效果。简单滴说Ajax就是不通过整个页面刷新与服务器通信的方法。Ajax的核心是XMLHTMLRequest 对象,XMLHTMLRequest可以使网页使用js向服务器提出请求并处理响应而不阻塞用户。

获取XMLHTMLRequest方法:

function   createXmlHttpRequest(){

   varxmlHttp;

   try{   //Firefox,Opera 8.0+, Safari

           xmlHttp=newXMLHttpRequest();

    }catch (e){

           try{   //InternetExplorer

                  xmlHttp=newActiveXObject("Msxml2.XMLHTTP");

            }catch (e){

                  try{

                          xmlHttp=newActiveXObject("Microsoft.XMLHTTP");

                  }catch (e){} 

           }

    }

   returnxmlHttp;

 }

    XMLHTMLRequest对象属性和方法:

方法

描述

abort()

停止当前请求

getAllResponseHeaders()

把http请求的所有响应首部作为键/值对返回

getResponseHeader("headerLabel")

返回指定首部的串值

open(“method”,”url”)

建立对服务器的调用,method参数可以是GET,POSTurl参数可以是相对URL或绝对URL。这个方法还包括3个可选参数。

send(content)

向服务器发送请求

setRequestHeader("label", "value")

把指定首部设置为所提供的值。在设置任何首部之前必须先调用open()



得到XMLHTMLRequest对象后通过其属性和方法即可完成异步操作,再结合dom编程,就能完成动态更新。

jQuery是封装了js对象和方法的开发库。只是一个简化了的js表示方法。jQuery涉及的方法属性很多,参看其帮助文档便可了解使用,并没有很特别的地方。其底层只是封装了前面所说的内容,方便开发人员调用。我就不进行介绍了。

另外还有一种还有一种数据格式: json:

JSON(JavaScript Object  Notation)一种简单的数据格式,比xml更轻巧。JSON是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或工具包。
JSON的规则很简单:对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’对”之间使用“,”(逗号)分隔

   规则如下:

       1)映射用冒号(“:”)表示。名称:

       2)并列的数据之间用逗号(“,”)分隔。名称1:1,名称2:2

       3)映射的集合(对象)用大括号(“{}”)表示。{名称1:值1,名称2:值2}

       4)并列数据的集合(数组)用方括号(“[]”)表示。

         [

           {名称1:值,名称2:值2},

           {名称1:值,名称2:值2}

         ]

      5  元素值可具有的类型:string, number, object, array, true,false, null 

以上内容部分来自互联网,如有相同,请见谅,毕竟只是学习。
0 0