6-1什么是事件JavaScript 创建动态页面。事件是可以被 JavaScript 侦测到的行为。 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件。比如说,当用户单击按钮或者提交表单数据时,就发生一个鼠标单击(onclick)事件,需要浏览器做出处理,返回给用户一个结果。主要事件表: 6-2鼠标单击事件( onclick )onclick是鼠标单击事件,当在网页上单击鼠标时,就会发生该事件。同时onclick事件调用的程序块就会被执行,...
//阻止事件冒泡function stopBubble(e){if(e&&e.stopPropagation){//非IE e.stopPropagation();}else{//IEwindow.event.cancelBubble=true;} } //阻止默认事件function stopDefault(e) {//阻止默认浏览器动作(W3C)if ( e && e.preventDefault ){e.preventDefault();}else{//IE中阻止函数器默认动作的方式window.event.returnValue = false;}returnfalse; } 原文:http://www.cnblogs.com/chinahui/p/5701035.html
事件模型冒泡型事件(Bubbling):事件由叶子节点沿祖先节点一直向上传递到根节点捕获型事件(Capturing):由DOM树最顶元素一直到最精确的元素,与冒泡型事件相反DOM标准事件模型:DOM标准既支持冒泡型事件,也支持捕获型事件,可以说是两者的结合体,首先是捕获型,接着冒泡传递事件对象在IE浏览器中事件对象是window的一个属性,在DOM标准中,event必须作为唯一的参数传给事件处理函数获得兼容的event 对象:function(event){ /...
经常遇到要给 html 中所有相同属性的元素添加同一个点击事件, 这里, 我需要给所有 type 属性为 "radio" 的 input 元素添加上相同的点击事件, 具体实现的 javascript 代码如下: // document.querySelectorAll("input[type=‘radio‘]")是获取网页上所有type属性为radio的input元素 document.querySelectorAll(‘.some-class‘).forEach(item => {item.addEventListener(‘click‘, event => {//handle click }) }) 参考资料: https...
当一个元素同时具有单击和双击事件时,双击时会触发2次单击和1此双击事件。双击会:先第1次单击 ,同时触发第2次和双击事件。<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title></title><script type="text/javascript">var id;window.onload = function () {document.getElementById(‘divdemo‘).onclick = funct...
事件绑定通常发生在 onload 或 DOMContentReady , 事件绑定占用 处理时间 占用内存, 而且不是每个事件都会被 点击执行。由此 事件委托 可以优化事件绑定行为、。事件逐层冒泡 直到被父级元素捕获。 事件代理 给外层元素绑定一个处理事件, 就可以处理子元素上出发所有事件。DOM 标准 事件三个阶段:捕获到达目标、冒泡IE 不支持捕获, 但冒泡够用了。event.currentTarget 事件处理程序当前正在处理事件的那个元素event.target 事...
事件是与DOM交互的最常见的方式,但它也可以用于非DOM代码中--通过实现自定义事件.实现自定义事件的原理是创建一个管理事件的对象.第一步:创建事件对象function EventTarget(){ this.handlers = {};//存储结构:{事件名1:[func1,func2……],事件名2:[func1,func2……]……}}EventTarget.prototype = {constructor:EventTarget,//添加事件addHandler:function(type,handler){ if(typeof this.handlers[type] == "undefined")...
鼠标指针悬停在某个元素上时触发一个动作:onmouseover事件处理函数鼠标指针离开某个元素时触发一个动作:onmouseout事件处理函数点击某个链接时触发一个动作:onclick事件处理函数this关键字:摘取当前对象原文:https://www.cnblogs.com/ljt828/p/10729535.html
事件流 描述的是在页面中接收事件的顺序事件冒泡 由最具体的元素接收,然后逐级向上传播至最不具体的元素的节点(文档)事件捕获 最不具体的节点先接收事件,而最具体的节点应该是最后接收事件 事件处理 HTML事件处理:直接添加到HTML结构中 DOM 0级事件处理:把一个函数赋值给一个事件处理程序属性【会被覆盖掉】结果会显示17行的结果,前面几行的事件会被覆盖掉。18行的是清空事件。 DOM 2级事件处理: ...
区分进程和线程进程是cpu资源分配的最小单位(系统会给它分配内存)不同的进程之间是可以同学的,如管道、FIFO(命名管道)、消息队列一个进程里有单个或多个线程浏览器是多进程的,因为系统给它的进程分配了资源(cpu、内存)(打开Chrome会有一个主进程,每打开一个Tab页就有一个独立的进程) 浏览器的渲染进程是多线程的1.GUI渲染线程2.JS引擎线程3.事件触发线程4.定时触发器线程5.异步HTTP请求线程 事件循环机制 上图解释:同步和...
本周任务,对javascript事件机制进行思考 提供以下 几个博文 论点:1.javascript事件模型2.e.target与e.currentTarget是干什么的?3.preventDefault与stopPropagation是干什么的4.什么是dispatchEvent?5.说一说事件代理的实现,并封装一个方法6.事件代理的问题<li><span></span></li>如果同时给span与li绑定事件该如何组装冒泡???7.tap事件是如何实现的8.tap会产生什么问题9.zepto的touch库做了什么?10.fastclick解决了什么问...
javascript中事件有很多种,这里只谈一个很有用,但不常见的事件。 单击鼠标右键触发的事件contextmenu事件。 document.oncontextmenu=function(){return false;}这样就可以屏蔽掉鼠标右击的事件。当然如果需要什么效果也可以在事件监听函数中添加。原文:http://www.cnblogs.com/smallLong/p/6553894.html
项目中有个需求,事件第一次执行(立即执行)与后几次执行不同,但是直接传递定义好的命名函数,返回结果一样。。如果通过匿名函数内再嵌套具名函数,结果就能返回正确!代码如下:代码<buttonclass="button">按钮</button> (function(w) {//第一次定义需要执行的代码块var fn = function() {console.log(1);};var btn = document.querySelector(‘.button‘);btn.addEventListener(‘click‘, fn, false);btn.click();//覆...
首先,此文不讨论繁琐细节,但是考虑到读者的心灵感受,本着以积极向上的心态,在此还是会列举示例说明。?标题为理解DOM事件,那么在此拿一个简单的点击事件为例,希望大家看到这个例子后能触类旁通。 最初我们给页面实现点击,就像下面这样的简单操作。 先定义一个块如<div id="weiyuzhou">微宇宙</div>,之后在<script type="text/javascript"></script>内部实现id为weiyuzhou的点击事件,如下代码所示:var wyz = document.getE...
splice针对数组的使用,表示给数组插入一个新的参数,返回一个新的数组,还会修改原来的数组,怎么理解这个意思,比如现在的数组arr = [1,2,3],现在给数组添加一个新的字符串‘Thomson‘,如arr.splice(1,‘Thomson‘),得到的新数组[1,‘Thomson‘,2,3],这样都可以,splice可以随意的插入到数组的任意地方,说明了splice的强大之处,所以我们可以在方法内使用数组的时候可以调用splice如function o(thing.splice){},当然也能删...