读javascript高级程序设计11-事件】的更多相关文章

javascript高级编程读书笔记系列,也是本砖头书.感觉js是一种很好上手的语言,不过本书细细读来发现了很多之前不了解的细节,受益良多.<br/>本笔记是为了方便日后查阅,仅作学习交流,喜欢本书的童靴建议购买正版. 1.读javascript高级程序设计01-基本概念.数据类型.函数 2.读javascript高级程序设计02-变量作用域 3.读javascript高级程序设计03-函数表达式.闭包.私有变量 4.读javascript高级程序设计04-canvas 5.读javascri…
javascript高级编程读书笔记系列,也是本砖头书.感觉js是一种很好上手的语言,不过本书细细读来发现了很多之前不了解的细节,受益良多.<br/>本笔记是为了方便日后查阅,仅作学习交流,喜欢本书的童靴建议购买正版. 1.读javascript高级程序设计01-基本概念.数据类型.函数 2.读javascript高级程序设计02-变量作用域 3.读javascript高级程序设计03-函数表达式.闭包.私有变量 4.读javascript高级程序设计04-canvas 5.读javascri…
一.Global 所有在全局作用域定义的属性和方法,都属于Global对象. 1.URI编码: encodeURI():主要用于对整个URI编码.它不会对本身属于URI的特殊字符进行编码. encodeComponentURI():主要用于对URI中的某一部分进行编码,很常用的是对查询字符串参数进行编码.它会对所有非标准字符进行编码. 对应的解码方法是decodeURI()和decodeURIComponent. var uri='http://www.cnblogs.com?a=1 2&b=陈…
一.节点关系 元素的childNodes属性来表示其所有子节点,它是一个NodeList对象,会随着DOM结构的变化动态变化. hasChildNodes():是否有子节点. var headlines=document.getElementById("headline_block"); var childs=headlines.childNodes; childs.length; childs[0];//取第一个子节点 childs.item(0);//取第一个子节点 parentN…
一.在线状态检测 开发离线应用时,往往在离线状态时把数据存在本地,而在联机状态时再把数据发送到服务器.html5提供了检测在线状态的方法:navigator.onLine和online/offline事件. 1.navigator.onLine属性 表示当前的网络状态是否在线,true表示在线,false表示离线.当网络状态变化时,该属性也会随之变化. 2.online和offline事件 HTML5提供了这两个事件,会在网络状态变化时触发.online在网络由离线变为在线时触发:offline…
一.跨文档消息传递(XDM) 1.发送消息 postMessage(msg,domain)用于发送跨文档消息.第一个参数是要传递的消息内容,第二个参数表示接收方来自哪个域.第二个参数有助于提高安全性,如果发现域不匹配则不会进行操作. 2.接收消息 接收到消息时,会触发window对象的message事件.传递给onmessage事件处理程序的对象主要包含三个信息: data:对应postMessage()第一个参数传入的内容: origin:发送消息的文档所在域.接收到消息后,检测消息来源是非常…
JSON是一个轻量级的数据格式,可以简化表示数据结构的工作量.在实际工作中,我们经常用它来传递数据,不过对于其使用的一些细节还是需要注意的.在ECMAScript5中定义了原生的JSON对象,可以用来将对象序列化为JSON字符串,或者将JSON数据解析为javascript对象. 一.JSON语法 JSON可以用来表示三种类型的值:简单值.对象和数组.对象和数组一般是JSON结构的最外层形式. 1.JSON简单值 可以在JSON中表示字符串.数值.布尔值.null. 例如: 5//数值类型 "h…
平时用惯了jQuery.ajax之类的方法,却时常忽略了它背后的实现,本文是学习了AJAX基础及几种跨域解决方案之后的一些收获. 一.AJAX——XMLHttpRequest 谈起Ajax我们都很熟悉,它的核心对象是XMLHttpRequest(简称XHR). 1.创建对象: 在ie7及以上版本支持原生的写法创建该对象. var xhr=new XMLHttpRequest(); 2.发送请求: open(type,url,isasync):第一个参数是请求类型(get,post),第二个参数是…
由于事件处理程序可以为现代web应用提供交互能力,因此许多开发人员不分青红皂白向页面中添加大量的处理程序:这在某些语言中不会导致问题,但是在javascript,事件处理程序数量直接关系到页面的整体运行性能.因为,首先每个函数都是对象,都会占用内存,内存中对象越多,性能就越差:其次,必须事先指定所有事件处理程序而导致的dom访问次数,会延迟整个页面的交互就绪时间. 一.事件委托 对“事件处理程序过多”问题的解决方案就是事件委托.事件委托利用了冒泡事件,只指定一个事件处理程序,就可以管理某一类型的…
一.事件流 谈到事件,首要要理解事件流的概念:事件流是指从页面接受事件的顺序:“DOM2级事件”规定事件流包括三个阶段:事件捕获阶段.处于目标阶段和事件冒泡阶段.目前大部分的浏览器的事件流是事件冒泡,即最开始由具体的元素接收事件,然后逐级传播到不具体的节点,直到传播到windows对象:另一种事件流是事件捕获,目前使用得比较少,是指文档对象先接收到事件,然后逐级向下,一直传播到事件的实际目标. 二.事件处理程序 1.两种表示方式 <input type="button" valu…