JavaScript高级程序设计13.pdf】的更多相关文章

使用hasOwnProperty()方法检测一个属性存在实例还是原形中,当属性存在对象实例中时,返回true alert(person1.hasOwnProperty("name")); //false 来自原型 原型和in操作符 单独使用和for-in中,单独使用时无论属性存在于实例中还是原型中都返回true ECMAScript 5的Object.keys()方法,接收一个对象作为参数,返回一个包含所有可枚举属性的字符串数组(参数是实例则返回实例的属性,是原型则返回原型的属性) v…
第13章 事件 JavaScript与HTML之间的交互式通过事件来实现的. 事件流 事件流描述的是从页面中接收事件的顺序,IE和Netscape提出了完全相反的事件流概念,IE是事件冒泡流,Netscape是事件捕获流 事件冒泡 click一个<div>元素,click事件沿DOM树向上传播,在每一级节点都会发生,直至传播到document对象,现代浏览器则将事件冒泡到window对象 事件捕获 click一个<div>元素,click事件沿DOM树依次向下,直到传播到事件的实际…
JSON对象 早期的JSON解析器就是使用JavaScript的eval()函数,ECMAScript5对解析JSON的行为做出了规定,定义了全局对象JSON. JSON对象有2个方法:stringify()和parse(),分别用于把JavaScript对象序列化为JSON字符串(值为undefined的任何属性会被略过)和执行相反的操作 JSON.stringify()除了要序列化的JavaScript对象外,还可以接受2个参数,一个是过滤器,可以是一个数组或者函数,另一个是一个选项,表示是…
错误处理 try-catch语句 try{ //可能会导致错误的代码 }catch(error){ //在错误发生时如何处理 } error是一个包含着错误信息的对象,它有一个message属性,保存着错误消息:还有一个保存着错误类型的name属性(Opera9之前不支持这个属性) try{ //可能会导致错误的代码 }catch(error){ alert(error.message); } finally子句 try{ //可能会导致错误的代码 }catch(error){ //在错误发生时…
15章 使用Canvas绘图 略 16章 HTML5脚本编程 HTML5规范了新的HTML标记和JavaScript API,以便简化创建动态Web界面的工作 跨文档消息传递 简称XDM,指来自不同域的页面间传递消息(比如www.wrox.com域中页面与p2p.wrox.com) XDM的核心是postMessage()方法,目的是向另一个地方传递信息,“另一个地方”指的是包含在当前页面中的<iframe>元素或者当前页面弹出的窗口 postMessage()方法接收2个参数:一条消息和一个…
表单序列化 首先了解一下浏览器如何将数据发送给服务器 对表单字段的名称和值进行URL编码,使用和号(&)分隔 不发送禁用的表单字段 只发送勾选的复选框和单选按钮 不发送type为“reset”和“button”的按钮 多选选择框中的每个选中的值单独一个条目 在单击提交按钮提交表单的情况下,也会发送提交按钮:否则,不发送提交按钮(包括type为“image”的<input>元素) <select>元素的值,就是选中的<option>元素的value特性的值,如果&…
输入模式 HTML5为文本字段新增了pattern属性,这个属性的值是一个正则表达式,用于匹配文本框中的值 例如,只想在允许在文本字段中输入数值 <input type="text" pattern="\d+" name="count"> 注意,模式的开头和结尾不用加^和$符号(假定已经有了),这两个符号表示输入的值必须从头到尾与模式匹配 与其他输入类型相似,指定的pattern也不能阻止用户输入无效的文本,.这个模式应用给值,浏览器…
过滤输入 对于一些浏览器,可以使用正则表达式里的text()测试用户按下的按键,Firefox和safari(3.1版本之前)会对向上向下.退格键和删除键触发keypress事件,在Firefox中,所有非字符键触发的keypress事件对应的字符编码为0,而在Safari3之前的版本,对应的字符编码全部为8,最后确保用户没有按下Ctrl键(不屏蔽ctrl+c.ctrl+v) EventUtil.addHandler(textbox,"keypress",function(event)…
共有的表单字段方法 每个表单字段都有两个方法:focus()和blur(),其中focus()用于将浏览器焦点设置到表单字段,激活表单字段.可以侦听页面的load事件 EventUtil.addHandler(window,"load",function(event){ document.forms[0].elements[0].focus(); }); 要注意的是,如果第一个表单字段是隐藏的,使用以上代码会导致错误 HTML5为表单字段新增了一个autofocus属性,不用Javas…
表单脚本 表单的基础知识 在HTML中,表单是由<form>元素表示的,在Javascript对应的是HTMLFormElement类型,它继承自HTMLElement,因此具有与其他HTML元素相同的默认属性,HTMLFormElement也有它自己独有的属性和方法 acceptCharset:服务器能够处理的字符集:等价于HTML中accept-charset特性 action:接受请求的URL:等价于HTML的action特性 elements:表单中所有控件的集合(HTMLCollec…