Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 您如何判断crossrider contextMenu选择了哪个元素_Javascript_Contextmenu_Crossrider - Fatal编程技术网

Javascript 您如何判断crossrider contextMenu选择了哪个元素

Javascript 您如何判断crossrider contextMenu选择了哪个元素,javascript,contextmenu,crossrider,Javascript,Contextmenu,Crossrider,appAPI.contextMenu回调返回的数据当前仅包括以下内容: 页面URL 链接URL 选定文本 srcUrl 似乎没有办法知道什么是真正的右键点击,只有一点关于它的信息。例如,我可以搜索所有图像并找到具有匹配srcUrl的图像,但是如果同一图像多次出现会怎么样 我可以尝试在extension.js中捕获右键单击事件,并尝试将它们与上下文菜单事件相匹配,但这似乎很简单 查找所选元素的预期方法是什么 例如,我希望能够右键单击图像并显示:无。目前,Crossrider平台不支持您所需的功能,

appAPI.contextMenu回调返回的数据当前仅包括以下内容:

页面URL 链接URL 选定文本 srcUrl 似乎没有办法知道什么是真正的右键点击,只有一点关于它的信息。例如,我可以搜索所有图像并找到具有匹配srcUrl的图像,但是如果同一图像多次出现会怎么样

我可以尝试在extension.js中捕获右键单击事件,并尝试将它们与上下文菜单事件相匹配,但这似乎很简单

查找所选元素的预期方法是什么


例如,我希望能够右键单击图像并显示:无。目前,Crossrider平台不支持您所需的功能,我认为您的解决方案是合理的。不过,我已经把你的建议转交给RigRIDER开发小组,他们会考虑将来发布。


[披露:我是一名Crossrider员工]

作为一种解决方法,尽管我没有进行过太多测试,但这实际上看起来相当可靠。TBH我期待一致性问题:

//in extension.js (background.js just forward context menu events)
var lastRightClicked = null;
window.addEventListener("contextmenu", function(e) { //I guess a mousedown event would work here too
    lastRightClicked = e.target;
}, true);

appAPI.message.addListener({channel:"contextmenu"}, function(message) {
    if (message.menuitem == "Hide")
        lastRightClicked.style.display = "none";
});

这方面有进展吗?这将是一个有用的功能。