第13章,事件事件冒泡IE的事件叫做事件冒泡:由具体到不具体<!DOCTYPE html><html><head> <title>Event Bubbling Example</title></ ...
第13章,事件
事件冒泡
IE的事件叫做事件冒泡:由具体到不具体
DOM0级事件处理程序
传统方式:将
函数赋值给事件处理程序属性,原因:1、简单,2、有跨
浏览器优势
var btn = document.getElementById("myBtn");btn.attachEvent("onclick",function(){ alert(this.id);});
因为事件处理程序的作用域是根据指定它的方式来确定的,所以不能认为this会始终等于事件目标,为此,最好使用event.serElement比较保险,例:
var btn = document.getElementById("myBtn");btn.onclick = function(){ alert(window.event.srcElement === this); //true};btn.attachEvent("onclick",function(event){ alert(event.srcElement === this); //false});
//浏览器是否支持DOM3级事件定义的事件var isSupported = document.implementation.hasFeature("UIEvent","3.0");
var EventUtil = { //其他代码 getCharCode:function(event){ if(typeof event.charCode == "number"){ return event.charCode; }else{ return event.keyCode; } }, //其他代码}
//检查浏览器是否支持变动事件var isSUpported = document.implementation.hasFeature("MutationEvents","2.0");
第14章,表单脚本
表单基础知识
HTML中由<form>表示,js中则是对应HTMLFormElement类型。继承了HTMLElement,因而与其他的HTML元素具有相同默认值,HTMLFormElement也有自己的属性和方法:
var EventUtil = { //其他代码 getCliboardText:function(event){ var clipboardData = (event.clipboardData || window.clipboardData); return clipboardData.getData("text"); }, setCliboardText:function(event,value){ if(event.clipboardData){ return event.clipboardData.setData("text/plain",value); }else if(window.clipboardData){ return window.clipboardData.setData("text",value); } }, //其他代码};
原标题:JavaScript高级程序设计(第三版)学习笔记13、14章
关键词:JavaScript
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。