如何禁用/删除浏览器右键菜单中的“在新标签页中打开链接”选项? 如果无法使用JavaScript等进行此操作,则是否有一种方法可以修改用户单击此链接时发生的内容,例如显示警报或防止标签页加载...?
如何禁用/删除浏览器右键菜单中的“在新标签页中打开链接”选项? 如果无法使用JavaScript等进行此操作,则是否有一种方法可以修改用户单击此链接时发生的内容,例如显示警报或防止标签页加载...?
我想强调两个重要的评论:
nnnnnn @ Aug 10 '11 at 5:49 :
作为用户,我更希望这种类型的功能是通过按钮触发而不是链接。我希望链接以一种更标准的方式工作,包括提供右键单击菜单或使用中键直接在新标签页中打开的选项。
Pars @ Dec 21 '13 at 13:10 :
当你用鼠标中键点击或按住 CTRL 点击链接时,它不起作用。如何处理这些情况?
浏览器决定是否获取链接行为。
某些现代浏览器(如 Chrome)将考虑以下所有条件匹配,则认为它是一个链接:
<a>...</a>
标签(不是 span
、div
、button
等)。href
属性。href
属性不为空。以下将获得链接行为:
<a href="http://www.website.com">Click Here</a>
<a>Not link because no href</a>
<a href="">Not link because empty href</a>
<span>Not link because not "a" tag</span>
<span href="http://www.website.com">Not link because not "a" tag again</span>
请注意,由浏览器决定。一些老旧/愚蠢的浏览器可能会将它视为链接行为,如果上述任何一个条件符合!
如果是链接,请使用<a href="some_link">...</a>
。如果不是链接,则使用其他东西,如<button>
。
现在已经解决了主要问题,结果很容易,只需将href的查询字符串传递给ajax函数即可。
我可能应该在我的问题中解释一下,我想要的只是一个临时措施。无论如何,感谢所有的评论。
我不确定为什么会有人downvote你的问题,你需要搜索的是如何使用JavaScript劫持事件。当你点击一个链接时,你可以很好地显示一个警报并阻止它工作。jQuery是一个流行的JS工具包,它有一种方法可以停止元素上的默认事件,用简单的英语来说,使用jQuery可以阻止超链接工作并显示警报。这个链接 http://api.jquery.com/event.preventDefault/ 可以帮助你进一步了解。关于禁用右键单击网页上出现的上下文菜单,是完全可能的。我不是JS忍者,所以不能评论是否可以从上下文菜单中删除项目,但在我看来,这应该是不可能的。