-
@事件对象 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
什么是事件对象?在触发DOM上的事件时都会产生一个对象 事件对象EVENT ①DOM中的事件对象 属性 (1)、type属性用于获取事件类型 (2)、target属性用于获取事件目标 (3)、stopPropagation()方法 用于阻止事件冒泡(有代码截图) (4)、preventDefault() 方法 阻止事件的默认行为(有代码截图) 如果一个div里面有一个button,button和div都绑定了click事件,如果是事件冒泡,那么点击button的时候,首先触发button的处理函数,然后触发div的处理函数。(由内而外) 如果有时候不想冒泡,也就是不希望div的事件被触发,那么需要阻止事件冒泡。stopPropagation()方法 如果需要阻止a标签的默认属性跳转,可以使用阻止事件的默认行为preventDefault()方法查看全部
-
阻止事件的默认行为方法的代码查看全部
-
冒泡过程 阻止冒泡函数的用法查看全部
-
1、IE事件处理程序记得需要加“on”; 2、支持IE事件处理程序的浏览器:IE和OPERA。 3、JS中,所有点号形式转中括号形式:element.onclick完全等价于element['onclick'],平时没变量参合的时候用前者简便,如有变脸则只能用后者——中括号的形式(如:element['on'+type])。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
@事件处理程序 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
1、HTML事件处理程序,现在不建议使用了。事件直接加在HTML代码中: 缺点:HTML和js代码高耦合,如果修改,就要修改两个地方:HTML元素内和Script函数。 2、DOM0级事件处理程序 (用得比较多):先把元素取出来,然后为其属性添加一个事件的方法叫DOM0级处理程序。 它是一种较传统的方式:把一个函数赋值给一个事件处理程序的属性。 优点:简单,跨浏览器的优势。 代码: var btn2=document.getElementById("btn2");//取得btn2按钮对象,--先获取出元素,定义对象 btn2.onclick=function(){alert('这是通过DOM0级添加的事件!')}//给btn2添加onclick属性,--让事件以对象的属性的形式出现 btn2.onclick=null;//删除onclick属性 3、布尔值:false--冒泡流(兼容最多的浏览器),true--捕获流。 4、所有带“on”的事件,不能加“on”。 5、this关键字,引用被触发的元素。 6、DOM0级DOM2级而没有DOM1级,而且DOM0、2都支持同个元素同时添加多个事件(注意添加顺序,即使事件相同(比如:都是click)也不会后者覆盖前者),但是HTML事件处理程序却不支持同个元素同时添加多个事件。 7、DOM2级处理程序不支持IE。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
@使用事件处理程序 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
@事件流概念 -事件冒泡流:即事件最开始由最具体的无素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到最不具体的那个节点(文档)。(比如:input-->document) -事件捕获流:不太具体的节点应该更早接收到元素,而最具体的节点最后接收到事件。(比如:document-->input) 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
good查看全部
-
var data=[...]; var timer=null; window.onload = function(){ var play = document.getElementById('play'); var stop = document.getElementById('stop'); play.onclick=playFun; stop.onclick=stopFun; document.onkeyup= function (event) { event = event || window.event; if(event.keyCode==13) { if(timer==null){ playFun(); } else{ stopFun(); } } } } function playFun(){ var play = document.getElementById('play'); var title = document.getElementById('title'); clearInterval(timer); timer=setInterval(function () { var random=Math.floor(Math.random()*data.length); title.innerText=data[random];; },50); play.style.background='#999'; play.style.cursor='default'; } function stopFun(event) { clearInterval(timer); timer=null; var play = document.getElementById('play'); play.style.background='#036'; play.style.cursor='pointer'; }查看全部
-
addEventListener的使用方式: target.addEventListener(type, listener, useCapture); target: 文档节点、document、window 或 XMLHttpRequest。 type: 字符串,事件名称,不含“on”,比如“click”、“mouseover”、“keydown”等。 listener :实现了 EventListener 接口或者是 JavaScript 中的函数。 useCapture :是否使用捕捉,一般用 false 。查看全部
-
跨浏览器事件处理程序<br> 把它封装在一个对象里:var 对象名={ }<br> 把添加事件和删除事件分别封装在该对象的两个方法中<br> 调用时语法:对象.方法(对象名,事件类型,触发的程序)<br> 注意:1. DOM2级事件处理程序和IE事件处理程序中的事件类型的不同,一个加on,一个不加on<br> 2. 连接属性时,所有用点的地方都可以用[]代替,两者完全等价查看全部
-
IE事件处理程序<br> 5.IE不支持DOM事件处理程序,拥有类似DOM的方法(IE和Opera支持)<br> 支持IE事件处理程序的浏览器:IE和OPERA attachEvent(事件名称,事件处理程序的函数);<br> detachEvent(事件名称,事件处理程序的函数);<br> 备注:IE事件处理函数attachEvent();detachEvent();参数:事件名称、函数,默认只支持冒泡;<br><br> 6.跨浏览器检测<br><br> /*addEventLister兼容性*/<br><br> function addHandler(ele, type, handler) {<br><br> if (ele.addEventListener) { // 所有主流浏览器,除了 IE 8 及更早版本<br><br> ele.addEventListener(type, handler, false);<br><br> } else if (ele.attachEvent) { // IE 8 及更早版本<br><br> ele.attachEvent("on" + type, handler);<<br><br> } else {<br><br><br> ele["on" + type] = handler;<br><br> }<br><br> }查看全部
-
在事件触发的 function中,关键字this可以引用被触发的元素查看全部
举报
0/150
提交
取消