document mouseup 事件

document.addEventListener('mousedown',function(){

    document.addEventListener('mouseup',(event)=>{

        console.log(1);

    },false);

},false)

https://img1.mukewang.com/5bff85860001642804480338.jpg

每次鼠标抬起来的时候 控制台输出1,

但是发现鼠标点多几次后控制台不是每抬起一次鼠标 控制台输出一次。 一直重复点好像出现了循环输出。 这样会影响性能呀。


慕桂英4014372
浏览 896回答 1
1回答

呼唤远方

你每按下一次鼠标就加了一个mouseup事件,然后就越来越多越来越多。可以在mouseup的回调里把mouseup事件绑定解除了。或者这样,做个简单的判断document.addEventListener('mousedown',function(){    if(document.eventMouseup){        return false    }else{        document.addEventListener('mouseup',(event)=>{            console.log(1);        },false);        document.eventMouseup = true;    }   },false
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript