JavaScript 获取DOM文档元素

 2015年10月06日    756

浏览器端的JavaScript运行时对HTML页面的操作,其本质是在操作一个或多个文档。程序启动后,文档会被抽象为Document对象,通过全局变量document可以获取对这个对象的引用。为了操作文档中的元素(Element对象),需要通过document获取这些元素。在W3CDOM规范中定义了选取元素的方法。

阅读全文

JavaScript DOM事件处理-事件捕获和事件冒泡

 2015年10月06日    912

在浏览器端JavaScript事件驱动的异步编程模式下,如果JavaScript关注特定类型的事件,那么就可以为事件注册事件处理程序。在DOM文档中,当事件发生时会逐级向上传递,并最终传递给文档树。如果DOM元素注册过事件处理程序,当事件传递到对应位置就会被事件处理程序(注册的函数)所处理。这种事件传播机制叫做事件“冒泡”。

阅读全文

JavaScript DOM文档事件-DOM0、DOM2级事件处理程序

 2015年10月04日    1140

浏览器端的JavaScript采用的是事件驱动的异步编程模型。在这种设置模式下,当文档、浏览器、元素或与之相关的对象发生某些事情时,浏览器就会产生对应的事件(event)。事件是JavaScript和HTML DOM交互的基础,DOM元素支持的每种事件,都可以使用一个与相应事件处理程序(事件监听)通过相应HTML属性来指定。添加DOM元素事件处理程序,可以使用DOM0级的方式添加,也可以使用DOM2级的方式添加。

阅读全文

JavaScript和DOM的产生与发展

 2015年10月03日    774

JavaScript历经了从被人误解到现在的被万众瞩目的转变。随着一些JavaScript编程规范的推出(如:AMDCMD),其应用范围也从前端一些小功能逐渐扩展到后端和一些大项目中。那么,JavaScript从混乱无序到严谨规范经历的哪些过程,在这些过程中又JavaScript增加了哪些功能特性?

阅读全文

为什么XMLHttpRequest的POST请求会变OPTIONS请求-XMLHttpRequest对象对HTTP请求的访问控制(CORS跨站资源共享)

 2015年09月22日    10135

要使用XMLHttpRequest对象POST请求不在同一域名下的一个站点,即:跨域请求,请求数据格式为JSON。因此需要使用setRequestHeader()方法设置Content-Type'application/json。设置完这个自定义的HTTP Headers后,发现原本可以跨域POST请求失效了。调试对应的服务端代码,发现POST请求变成了OPTIONS请求。这与CORS(Cross-Origin Resource Sharing,跨站资源共享)策略有关,设置Content-Type后,CORS简单请求变为Preflighted 请求。在Preflighted 请求中,XMLHttpRequest对象会首先发送OPTIONS嗅探,以验证是否有对指定站点的访问权限。

阅读全文

addEventListener、removeEventListener与事件处理程序

 2015年09月22日    2406

事件处理程序又叫做事件监听器,addEventListener()removeEventListener()是“DOM2级事件”中定义的两个方法,分别用于添加和删除事件处理程序。所有的DOM节点中都包含这两个方法,并且它们都接受3个参数:要处理的事件名、要为事件添加的处理程序的函数和一个表示事件处理阶段的布尔值。详见下文……

阅读全文

处理XMLHttpRequest对象AJAX跨域请求问题

 2015年09月21日    592

使用JavaScirpt中的XMLHttpRequest对象可以不刷新页面的情况下更新网页,实现页面与后端服务器的数据交互。但大多数浏览器都实施了同源安全策略,要求被请求的 URL 与包含XMLHttpRequest脚本的页面具有相同的主机名和端口。浏览器的这一特性,给AJAX请求的安全带来了一定的保障,但对于需要跨域请求的项目和站点也带来了一定的困扰。

阅读全文

JavaScritpt H5 模拟APP页面下拉刷新

 2015年09月16日    1606
JavaScritpt H5 模拟APP页面下拉刷新

在APP中,页面下拉刷给用户操作带来了极大的便利性。但这一效果能否在手机端的Web页中使用呢?答案是肯定的。利用HTML5中的touchstarttouchmovetouchend事件,可以模拟出类似手机APP的页面下拉刷新效果。

阅读全文