我想知道如何使左键单击在 javascript 中表现为右键单击。我希望通过左键单击出现上下文菜单。
问候。
事件监听器:
document.addEventListener('click', function(e) {
console.log(e);
});
这已经为您提供了很多信息。您将获得鼠标点击的 x/y 坐标,更重要的是,您将获得收到点击的元素:e.originalTarget(请注意,事件因浏览器而异)。
保存元素:
document.addEventListener('click', function(e) {
var originalElement = e.srcElement || e.originalTarget;
});
并右键单击该元素:
document.addEventListener('click', function(e) {
var originalElement = e.srcElement || e.originalTarget;
if (document.createEvent) {
var ev = document.createEvent('HTMLEvents');
ev.initEvent('contextmenu', true, false);
originalElement .dispatchEvent(ev);
} else { // Internet Explorer
originalElement .fireEvent('oncontextmenu');
}
});
它似乎还没有工作,所以考虑使用这种方法在纯js中触发右键单击:How to generate a right-click event in all browsers
尝试这个
$(document).contextmenu(function (event) {
$(event.target).click();
event.preventDefault();
})