右击潜水与点击事件不39;t在上下文菜单中显示链接选项

Right Click Div with Onclick Event Doesn't Display Link Options in Context Menu

本文关键字:菜单 上下文 显示 选项 链接 潜水 事件 右击      更新时间:2023-09-26

我想让整个div都可以点击。

将onclick事件添加到div中,不允许我使用链接执行以下操作:

  1. 右键单击->在"新建"选项卡中打开链接
  2. 右键单击->复制链接位置
  3. 鼠标滚轮单击可在新选项卡中打开链接
  4. 当鼠标悬停在链接上时,它会在状态栏中显示链接的URL

根据我对HTML5的理解,您不应该用锚标记来包装div标记。所以我添加了一个onclick事件来转到一个新的URL。然而,我有上面提到的四个问题。

    Good Example:
    <div onclick="location.href='http://www.google.com';">
        <p>Paragraph</p>
        <div>More content...</div>
    </div>

如果我将Div包装在锚标签中,它具有我所期望的所有功能,但不符合HTML5标准。

    Bad Example:
    <a href='http://www.google.com'>
        <div>
            <p>Paragraph</p>
            <div>More content...</div>
        </div>
    </a>

有没有一种可以接受的方法可以像好例子一样使用onclick事件从坏例子中获得行为?

试试这个:

HTML

<div id="dv">
    <p>Paragraph</p>
    <div>More content...</div>
</div>

JS

$(document).ready(function () {
$('#dv').mousedown(function (event) {
switch (event.which) {
case 1: //Left Click
window.open('http://www.google.com');
case 2: //Middle Click
window.open('http://www.google.com');
break;
case 3: //Right Click
}
});
$("#dv").hover(function () {
window.status = "http://www.google.com";
});
});

关于使用window.status 的信息

此属性在Firefox和其他一些浏览器的默认配置中不起作用:设置window.status对状态栏中显示的文本没有影响。要允许脚本更改状态栏文本,用户必须在about:config屏幕中将dom.disable_window_status_change首选项设置为false。

参考:https://developer.mozilla.org/en-US/docs/Web/API/window.status