当我.click()
在<a>
标签上使用时,该事件仅在我单击元素时才有效。否则,如果用户执行右键单击 > 在新窗口中打开或在新选项卡中打开,则不会触发click()
事件。
click()
所以,我的问题是......当用户右键单击>在新选项卡/窗口中打开时如何触发事件?
这是HTML:
<a href="url">Click Me</a>
这是Js:
$("a").click(function(){
alert('You clicked me!');
});
当我.click()
在<a>
标签上使用时,该事件仅在我单击元素时才有效。否则,如果用户执行右键单击 > 在新窗口中打开或在新选项卡中打开,则不会触发click()
事件。
click()
所以,我的问题是......当用户右键单击>在新选项卡/窗口中打开时如何触发事件?
这是HTML:
<a href="url">Click Me</a>
这是Js:
$("a").click(function(){
alert('You clicked me!');
});
您可以尝试此代码,但请记住更改 UI 不是一个好主意:
var addEvent = (document.addEventListener) ?
function(target,event,fn){
if(target) return target.addEventListener(event,fn,false);
}:
function(target,event,fn){
if(target) return target.attachEvent(('on' + event),fn);
},
allLinks = document.links || document.getElementsByTagName('a');
for(var i=0;i<allLinks.length;i++)
addEvent(allLinks[i],'mouseup',function(e){
var e = e || event;
if(e.which===3){
alert('Open in new tab/window');
e.preventDefault();
return false;
}
});