Javascript 如何使用rightClick使锚定标记(与JS函数调用配合使用)正常工作>;是否在新选项卡中打开?
我用的是锚定标签Javascript 如何使用rightClick使锚定标记(与JS函数调用配合使用)正常工作>;是否在新选项卡中打开?,javascript,jquery,html,anchor,Javascript,Jquery,Html,Anchor,我用的是锚定标签 <a href="#" onClick="javascriptMethod();">asdasdasd</a> 此javascript函数动态决定要打开的页面。单击即可正常工作。 但当我右键单击并在新选项卡中打开时,它只会显示一个空白 有什么建议吗?我想你可以用这样的方法: jQUERY $(function(){ $('a').mousedown(function(e){ // On mouse down check
<a href="#" onClick="javascriptMethod();">asdasdasd</a>
此javascript函数动态决定要打开的页面。单击即可正常工作。
但当我右键单击并在新选项卡中打开时,它只会显示一个空白
有什么建议吗?我想你可以用这样的方法: jQUERY
$(function(){
$('a').mousedown(function(e){
// On mouse down check to see if it was left, middle or right click
switch (e.which) {
case 1: // Left Mouse CLick
// Prevent click event on link
e.preventDefault();
// Redirect to where javascriptMethod() says
location.href = javascriptMethod();
break;
case 2: // Middle Mouse CLick
// Prevent click event on link
e.preventDefault();
// Redirect to where javascriptMethod() says
location.href = javascriptMethod();
break;
case 3: // Right Mouse CLick
// On right mouse click change the href attribute of the link.
// This way the 'Open link in new tab' and 'Open link in new window'
// will use the right link
$(this).prop('href', javascriptMethod());
break;
}
});
// Here you will decide which link to return. I just hard coded Google
function javascriptMethod() {
return 'http://www.google.com';
}
})
HTML
<a href="javascript:void(0)">Link</a>
我假设您的javascript函数将模仿
导航的自然行为。我建议使用其他HTML标记,如
,
等。这样做会阻止浏览器在上下文菜单中显示“在新选项卡中打开”选项
@tliokos的答案可能有效,但我认为它会让用户感到困惑,并改变点击事件的行为,特别是在使用mousedown()
时,如果您注意到,您的浏览器通常只在mouseup上开始导航,等等 及