可能重复:
How can I capture the right-click event in JavaScript?
我有链接,点击后,执行一些JavaScript代码。就像这样:
<script>
function myFunction(){
alert("Hello World!");
}
</script>
<a href="http://google.com" onclick="myFunction()">Click</a>
当我执行“右键单击 - &gt;在新标签页中打开”时,它会将我指向“google.com”,而不会调用myFunction()
。而这正是我想要的。
当我通过按“Ctrl +左键单击”链接打开新标签中的链接时,会出现问题。这样,它会执行myFunction()
,然后转到google.com。
有什么方法可以解决这个问题吗?
答案 0 :(得分:2)
签入myFunction
以查看是否按下了修改键。
function myFunction(e) {
// http://www.quirksmode.org/js/events_access.html
var event = e || window.event;
// https://developer.mozilla.org/en-US/docs/DOM/MouseEvent
if (event.ctrlKey || event.metaKey) return;
alert("Hello World!");
}
N.B。这个确切的代码可能无法在所有浏览器中运行(这就是JavaScript库的用途)。