我有以下简单代码——我曾经有一个更复杂的东西来阐明我的观点——。
我有以下html:
<body>
<a id="somelink" href="http://www.google.com"
onmousedown="preventOpen(event,this)" onclick="return
confirmClick();">Click me</a>
</body>
以下是相关的JavaScript代码:
<script>
function preventOpen(event, element){
event = event || window.event;
event.preventDefault();
if (event.which != 3) {
element.click();
}
}
function confirmClick(){
return confirm("Are you sure?");
}
</script>
基本上,我正在尝试在使用鼠标中键滚轮按钮单击链接打开新标签时,提示确认信息 - 我想要防止新标签的打开。这在Chrome浏览器中非常好用,但它在Firefox浏览器中却不起作用 - 一旦退出javascript代码(即“confirmClick”函数),它就会打开一个新标签 - 尽管它已成功触发preventDefault()。有什么想法为什么它在Firefox中无法工作吗?我现在更倾向于避免使用jQuery。