一个js监听事件的小问题


代码很简短,问题应该也比较简单,先贴上代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test</title>
</head>
<body>

<div id="test" style="width:200px;height: 200px;background-color: #446cb3"> </div>


<script>
    
    function mytest (node){

        function init(){

            console.log("a click");

        }

        node.removeEventListener("click",init);
        node.addEventListener("click",init);

    }

    mytest(document.getElementById("test"));
    mytest(document.getElementById("test"));

</script>
</body>
</html>

问题是,我在第二次调用这个函数的时候,我认为应该已经 remove掉了第一次监听事件了,但是浏览器会同时打出两个“a click” ,想知道这中发生了什么。。。

(重点:实际业务中init函数不能暴漏在外面...这是一个demo样例

以及。。如何让多次调用mytest这个函数,实际只打出一次“a click”..(init函数不暴漏在外面)

先谢过啦


var mytest = (function(){
        function init(){
            console.log('a click')
        }
        return function(node){
            node.removeEventListener("click",init);
            node.addEventListener("click",init);
        }
    })()

因为你每次执行都重新定义了init,所以第一次add的init和第二次的remove的init不同,所以无效;
解决方法看楼上。。



相关阅读:
webstorm中和subline中同样的文件在chrome控制台下调试时,不一样,是什么原因
angular-ui-router的预加载与控制器注入
laravel在中间件内生成的变量如何传到控制器
vue 路由跳转后 怎样去掉指定的组件?
求一个博客用的tags轮子,怎么都是laravel的。
[webstorm]webstorm如何打开.babelrc文件?
关于ajax请求
模拟草料上传二维码图片,得出识别结果
关于 浏览器 Cache-Control 不能设置问题。
transform属性在这种情况下为什么不生效啊?
怎样通过$.ajax跨域请求斗鱼TV API 取得json数据
cef3 cookie分离
标签添加成功了为什么不显示呢?
PHP水印合成中文乱码怎么解?网上教程没用
chrome下disabled的input不能选中和复制, 有解决办法吗
ps切图出现细线
canvas绘制的时钟,出现多余的黑色线条是怎么回事??
关于页面同时异步请求两个js,渲染页面等待如何优化
关于 promise 的问题:请问在这个短小函数里 then 会被执行几遍?
Vue嵌套路由失效?



快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 未来的交通作文400字 酬殷尧藩 2015三八妇女节微博祝福语大全 五一劳动节 有意义的五一劳动节 这件事让我感慨万分_关于感慨的记事作文650字 2013年10月党员思想汇报范文:认真实现中国梦 教师行为的50个细节读后感 跑步比赛350字 关于努力的作文100字 加薪升迁都无望的七个习惯 有关幸福的励志短语 散文:爱情领悟 社区党风廉洁建设年度总结 两篇 死亡证明有什么用 波兰之旅(10)---烧烤晚会 初一责任作文:爱是责任,是担当 感恩祖国作文450字 全球低碳日宣言 失落的花瓣 一臂之力作文600字 爱平平淡淡,可是真真切切(我的故事) 成长的台阶 2017医院办公室工作计划范文 父亲的美 2016建筑保证书 校之美作文600字 冲向蓝天的时候作文600字 珍惜拥有的句子 化工实习报告 陈驼子的婚事 我心目中的20班 毯子的故事 腾飞的石龙(游记散文) 分别作文300字 关于“O”的遐想作文400字 莲韵依然 原来我怀念的是我自己 晋先生与黄鼠狼结友作文2500字 永远的纳兰容若 山林作文600字 两分钟有多久秦袁作文600字 参观军营记 小学三年级作文400字:玩沙池上长了草 爱在痛的边缘 母亲从来不说我比别人差作文1000字 浣溪沙.二首 关于中国冬奥运会的英语作文 关于统筹城乡发展个人工作心得 山泉娃娃350字 看图写话 受伤的小鸟 韩奕哲

Copyright © 2016 phpStudy |