[英]Disable mouse scroll middle click event with jQuery
我編寫了以下代碼,用於在單擊鼠標時禁用鼠標滾動。 但是我的代碼不起作用,當我用鼠標滾動點擊它會打開我的鏈接。
這是我的代碼:
$('a').on('mousedown', function(e) { if (e.which === 2) { console.log('Disabled'); return false; } });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script> <a href="#dontwanttoopen"> click here </a>
您必須使用auxclick
才能禁用此功能。 用 'auxclick' 替換你的 'click',並添加e.preventDefault()
,它會工作,在 chrome 和 FF 中測試
$('a').on('auxclick', function(e) { if (e.which === 2) { e.preventDefault(); } });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script> <a href="#dontwanttoopen"> click here </a>
您可以使用event.preventDefault()
取消操作
document.onmousedown= function (e) { if( e.which == 2 ) { e.preventDefault(); alert("middle button pressed, dont open"); } }
<a href="#dontwanttoopen"> click here </a>
試試下面的代碼,謝謝:
<a href="#dontwanttoopen" id="link_click">click here </a>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js">
</script>
<script>
var el = document.getElementById('link_click');
el.onmousedown = mouse_down;
function mouse_down() {
alert('mouse_down() called');
return false;
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.