在右键单击菜单中的超链接上,如何删除或隐藏“在新选项卡中打开”和“在新窗口中打开”选项?
例如
<a href="#" onclick="asd">foo</a>
不知道为什么要这样做,但可以通过将 移动href
到data-href
属性,然后删除href
并添加点击处理程序来完成。onclick 将读取data-href
并重定向。
var links = document.getElementsByTagName("a");
for(var i=0; i<links.length; i++){
links[i].setAttribute("data-href", links[i].getAttribute("href"));
links[i].removeAttribute("href");
links[i].onclick = function(){
window.location = this.getAttribute("data-href");
};
}
右键菜单显示:
您可以使用 javascript 链接而不是普通的 html 链接。只需执行 href="javascript:void(0)" 并处理单击事件即可重定向页面。这不会删除在另一个选项卡中打开的选项,但会确保页面在尝试时实际上不会打开。
此外,您可以使用另一个标签来代替 HTML 标签,并给它一个 cursor:pointer css 属性和 jquery onclick 以使其像链接一样工作。这将从上下文菜单中完全删除“在另一个选项卡中打开”选项。
您可以使用以下代码来完成。
<script language="javascript">
$("a").click(function(event)
{
if(event.button==2)
{
return false;
}
});
</script>