我有一个简单的页面:
<!doctype html>
<html>
<head>
<style type="text/css">
.wrapper_1
{
width:500px;
height:300px;
border:1px solid black;
overflow:hidden;
margin-top:100px;
}
.ul1
{
white-space:nowrap;
margin-bottom:35px;
background-color:#ededed;
}
</style>
</head>
<body>
<div id="d1" class="wrapper_1" style="position: relative;">
<div class="mf_scrollbar_scroll_wrapper">
<ul class="ul1">
<li>item a</li>
<li>item</li>
<li>item</li>
<li>item d</li>
<li>item</li>
<li>item lorem ipsum dolor sit amet adipiscing lorem ipsum dolor sit amet adipiscing lorem ipsum dolor sit amet adipiscing lorem ipsum dolor sit amet adipiscing</li>
<li>item</li>
<li>item h</li>
<li>item</li>
<li>item</li>
<li>item l</li>
<li>item</li>
<li>item</li>
<li>item p</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item t</li>
<li>item</li>
<li>item</li>
<li>item x</li>
<li>item</li>
<li>item z</li>
<li>item</li>
<li>item</li>
<li>item zz</li>
<li>item</li>
<li>item</li>
<li>item zzz</li>
</ul>
<div>hello</div>
</div>
</div>
</body>
我有这个javascript:
document.getElementById('d1').addEventListener('mousedown', function(evt){console.log(evt)}, false)
当我左键或右键单击并按住时,它会触发一次。如果我按下鼠标滚轮(按钮4)并按住并按住,它将连续触发。如果按住鼠标滚轮按钮,是否可以禁用此功能或仅触发一次?
答案 0 :(得分:2)
在DOM Enlightenment书中,科迪·林德利(Cody Lindley)撰写了有关鼠标单击事件的文章:
取决于环境配置,单击事件可能是 如果一个或多个事件类型为mouseover,mousemove和 鼠标移出发生在按下和释放定点设备之间 按钮。点击事件之后可能还会出现dblclick事件“
考虑到这一点,我将做出一个明智的猜测,即您自己正在发生类似的事情。为避免这种情况,您可能需要考虑使用Underscore.js库提供的油门或防抖功能。