这篇文章主要介绍“vue如何添加和移除事件”,在日常操作中,相信很多人在vue如何添加和移除事件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue如何添加和移除事件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧! vue添加和移除事件的方法:1、通过“addEventListener()”方法添加事件句柄;2、通过“removeEventListener()”方法移除事件句柄。vue事件添加和移除.removeEventListener()
方法要求我们向其传递与传递给 .addEventListener()
的函数 完全相同的监听器函数。完全相同 意味着:具有相同的目标具有相同的类型并传递完全相同的监听器removeEventListener() 方法用于移除由 addEventListener() 方法添加的事件句柄。注意: 如果要移除事件句柄,addEventListener() 的执行函数必须使用外部函数,如上实例所示 (myFunction)。匿名函数,类似 “document.removeEventListener(“event“, function(){ myScript });” 该事件是无法移除的。例如:的答案会是false,因为他们属于不同的实体。那么,什么样的可以成功移除呢?这个可以√,因为他们都指向myEventListeningFunction()这同一个方法。而如果是则不会成功移除,因为他们的监听器函数并不是指向同一个。事件传递有两种方式:冒泡与捕获。事件传递定义了元素事件触发的顺序。 如果将 元素插入到 元素, 哪个元素的 “click” 事件先被触发呢?在 冒泡 中,内部元素的事件会先被触发,然后再触发外部元素,即: 元素的点击事件先触发,然后会触发 在 捕获 中,外部元素的事件会先被触发,然后才会触发内部元素的事件,即: 元素的点击事件。addEventListener() 方法可以指定 “useCapture” 参数来设置传递类型:addEventListener(event, function, useCapture);默认值为 false
, 即冒泡传递,当值为 true
时, 事件使用捕获传递。removeEventListener()
方法移除由 addEventListener()
方法添加的事件句柄:element.removeEventListener(“mousemove”, myFunction);浏览器兼容处理IE 8
及更早 IE 版本,Opera 7.0
及其更早版本不支持 addEventListener()
和 removeEventListener()
方法。但是,对于这类浏览器版本可以使用 detachEvent()
方法来移除事件句柄:通常写法:都是错误的,呵呵。
created(){ this.lastTime=newDate(); this.timer=null; window.addEventListener("scroll",this.throttle); }, destroyed(){ window.removeEventListener("scroll",this.throttle); } //me免费云主机域名thods throttle(){ letstartTime=newDate(); letremaining=200-(startTime-this.lastTime); clearTimeout(this.timer); if(startTime-this.lastTime>200){ this.lastTime=startTime; this.scroll.call(this); }else{ //最后一次也执行 this.timer=setTimeout(()=>{ this.scroll.call(this); },remaining); } }
事件操作和节流融合一起,所以要理解节流的实现原理。到此,关于“vue如何添加和移除事件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注百云主机网站,小编会继续努力为大家带来更多实用的文章!免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@byun.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
今天小编给大家分享一下JS异常抛出和处理的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。在 js 中,有时候我们需要处理一些异常或错误…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。