好的,我知道我可以通过运行此代码来模拟点击
document.getElementById('recover').click();
我能找到的最接近的是cntextmenu所以我试过
document.getElementById('recover').contextmenu();
然而这没有任何作用
是否可以右键单击和元素以显示上下文菜单,以便我可以单击该列表中的项目?如果是这样,有人能指出我正确的方向来实现这样的目标吗?
我已经做了一些搜索,但我发现的唯一一件事是jquery javascript捕获事件并没有实际触发事件
答案 0 :(得分:7)
使用jQuery
$('#recover').trigger({
type: 'mousedown',
which: 3
});
,否则
var element = document.getElementById('recover');
var e = element.ownerDocument.createEvent('MouseEvents');
e.initMouseEvent('contextmenu', true, true,
element.ownerDocument.defaultView, 1, 0, 0, 0, 0, false,
false, false, false,2, null);
return !element.dispatchEvent(e);
答案 1 :(得分:2)
当然,您可以使用jQuery trigger()功能。
$('#recover').trigger({
type: 'mousedown',
which: 3
});
根据您正在做的事情,您可能希望触发鼠标按下然后按下鼠标,这可能是这样的:
$('#recover').trigger({
type: 'mousedown',
which: 3
}).trigger({
type: 'mouseup',
which: 3
});
我不是那种链接长命令的忠实粉丝,但对你的应用来说最可读的东西都很好。