有一个javascript生成的链接,我需要确保用户无法打开它,要么无法右键单击并选择在新选项卡中打开,要么使该操作根本不做任何事情。
有什么想法吗?
编辑:我提出这个问题不是为了问这样做是否正确,而是要知道这是否可能。如果你能帮我一个合适的答案,请做,否则不要给我建议我不需要解决的问题。对不起的态度。
有一个javascript生成的链接,我需要确保用户无法打开它,要么无法右键单击并选择在新选项卡中打开,要么使该操作根本不执行任何操作。
做不到。老实说,我也看不出任何人想要这个的正当理由。在选项卡中打开页面的结果与仅打开页面没有什么不同。无论如何,无法判断您的网站是在一个选项卡中还是在不同的选项卡中打开。
最好的解决方案可能是完全避免使用链接。 相反,请使用<span>
或<div>
(或类似)并绑定重定向页面的单击事件处理程序。
document.getElementById("mylinkdiv").addEventListener("click", function() {
window.location.href = "foo.html"
}
一般来说,这很糟糕,因为你不希望你的网站功能依赖于启用的JavaScript,但你已经说过用户首先需要JavaScript才能看到链接。
这是不可能的。简单。不可能
您可以通过禁用页面上的右键单击来执行此操作。由于"在新选项卡中打开链接"是浏览器特定的功能,因此您无法在右键单击菜单中有选择地禁用该功能。将此脚本放在您的网页中以禁用右键单击。
<script language=JavaScript>
var message = "You cannot right Click on this page";
function rtclickcheck(keyp){ if (navigator.appName == "Netscape" && keyp.which == 3)
{
alert(message);
return false;
}
if (navigator.appVersion.indexOf("MSIE") != -1 && event.button == 2)
{
alert(message);
return false;
}
}
document.onmousedown = rtclickcheck;
</script>