Chrome扩展+ jQuery:如何在打开上下文菜单时获取光标下的元素?

时间:2017-05-19 05:24:35

标签: javascript jquery google-chrome-extension

我正在使用typescript中的chrome扩展,我想要在打开上下文菜单时获取用户右键单击的元素。

我已尝试使用contextmenu事件,但总是会将文档根目录作为目标。

$(document).contextmenu((eventObject: JQueryMouseEventObject) => {
    console.log(eventObject.target); // This always prints the root element
});

我也尝试使用click事件,这对于左键单击效果很好,但不适用于右键单击。

$(document).click((eventObject: JQueryMouseEventObject) => {
    console.log(eventObject.target); // left click is fine, right click is not
});

最后,我也尝试使用mousedown事件,结果与点击相同。

$(document).mousedown((eventObject: JQueryMouseEventObject) => {
    console.log(eventObject.target);
});

任何帮助将不胜感激:)

1 个答案:

答案 0 :(得分:0)

经过一些诡计后,我发现我以前的尝试都没有起作用的原因是因为我正在运行我的测试网站,并且检查员的Toggle device toolbar选项已打开。 关闭它会导致所有3个不同的事件触发器按预期工作。

我最终使用项目的contextmenu事件触发器。

$(document).contextmenu((eventObject: JQueryMouseEventObject) => {
    console.log(eventObject.target); // This always prints the root element
});