-
学会用变量查看全部
-
要边学边写,当时学效果最好。查看全部
-
阻止事件冒泡查看全部
-
跨浏览器解决事件处理查看全部
-
滑过滑过、离开、点击每个选项时这个我又不会了,唉查看全部
-
常用事件处理的封装查看全部
-
IE事件对象的属性查看全部
-
IE的事件对象属性查看全部
-
阻止事件默认行为查看全部
-
事件对象的属性查看全部
-
IE事件处理查看全部
-
事件处理查看全部
-
什么是事件对象?在触发DOM上的事件时都会产生一个对象 例:function show(event){……} 参数event接收的就是事件传过来的对象 事件对象EVENT ①DOM中的事件对象 属性 (1)type属性用于获取事件类型 (2)target属性用于获取事件目标 (3)stopPropagation()方法 用于阻止事件冒泡 (4)preventDefault() 方法 阻止事件的默认行为 ②IE8以下事件对象(window.event) 1.事件类型:event.type 2.事件目标:event.srcElement 3.阻止事件冒泡:event.cancelBubble = true 4.阻止默认事件:event.returnValue = false 如果一个div里面有一个button,button和div都绑定了click事件,如果是事件冒泡,那么点击button的时候,首先触发button的处理函数,然后触发div的处理函数。(由内而外) 如果有时候不想冒泡,也就是不希望div的事件被触发,那么需要阻止事件冒泡。stopPropagation()方法 如果需要阻止a标签的默认属性跳转,可以使用阻止事件的默认行为preventDefault()方法查看全部
-
1.IE事件处理程序:IE也提供了类似DOM2级事件处理程序 attachEvent()添加事件 detachEvent()删除事件 接收相同的两个参数,事件处理程序的名称和事件处理程序的函数。去掉了布尔值,不使用第三个参数的原因:IE8以及更早的浏览器版本只支持事件冒泡! 在ie下给btn3添加事件 btn3.attachEvent('onclick',showMes); 主意:在ie事件处理程序上,又要把on加上 btn3.detachEvent('onclick',showMes); 支持ie事件处理程序的浏览器主要有ie和opera两个浏览器。 2.跨浏览器事件处理程序 var eventUtil = { //添加句柄 addHandler:function(element,type,handler){ if(element.addEventListener){element.addEventListener(type,handler,false);} // DOM2级事件处理程序 else if(element.attachEvent){element.attachEvent('on'+type,handler);} // IE事件处理程序 else{element['on'+type]=handler;} // DOM0级事件处理程序 }, //删除句柄 removeHandler:function(element,type,handler){ if(element.removeEventListener){element.removeEventListener(type,handler,false);} // DOM2级事件处理程序 else if(element.detachEvent){element.detachEvent('on'+type,handler);} // IE事件处理程序 else{element['on'+type]=null;} //DOM0级事件处理程序 } } eventUtil.addHandler(btn3,'click',showMessage); 3.js中所有用'.'的地方都可以使用'[]' 如:对象的点击事件element.onclick===element['onclick']查看全部
-
三种事件处理程序: 一:HTML: 直接把代码写在标签内,写在HTML结构里;或把函数名写在HTML结构里。这种情 况因为HTML和JS高度耦合,不方便修改; 二:DOM0级事件处理程序:把一个函数赋值给一个事件处理程序的属性. 1.先用 getElementById() 取得相应元素,并定义好名称;如:var btn2=documentById("btn2"); 2.再给以上变量添加一个属性并给出该事件的函数,如:btn2.onclick=function(){alert("这是通过DOM0级添加的事件");} 3.如要删除该事件则:btn2.onclick=null; 三:DOM2级事件处理程序: 定义了两个方法:addEventListener()和removeEventListener()。 ()里是三个参数:要处理的事件名、作为事件处理程序的函数、布尔值(一般用false,即为事件冒泡处理程序,true表示事件捕获处理程序) 例如:1:依然先取出该元素:var btn3=document.ElementById("btn3"); 2:添加事件:btn3.addEventListener("click",showMes,false)(注:要把所有带on 的事件名前的on去掉;showMes是被引用的一个函数名。) 3:删除事件:btn3.removeEventListener("click",showMes,false)(注:添加进去什么样的参数,删除也是一样的参数,而且通过Event添加的事件必须通过Event删除)。 4:一个元素添加多次事件(DOM0级也可以):btn3.addEventListener("click",function(){alert(this.vaule)},false)(注,这里的this是引用目前这个元素btn3的vaule属性的值,然后被alert弹出);查看全部
举报
0/150
提交
取消