Javascript 在按住meta/control键的情况下以编程方式为单击创建jQuery事件

Javascript 在按住meta/control键的情况下以编程方式为单击创建jQuery事件,javascript,jquery,Javascript,Jquery,我希望能够以编程方式创建Ctrl click或Cmd click事件,以便测试我的事件处理代码,如下所示: // event is a jQuery event if (event.metaKey || event.ctrlKey) { // do stuff openUrlInNewWindow(url); } else { // do other stuff openUrl(this.clickedAd.url); } jQuery.Event("click

我希望能够以编程方式创建Ctrl click或Cmd click事件,以便测试我的事件处理代码,如下所示:

// event is a jQuery event
if (event.metaKey || event.ctrlKey) {
    // do stuff
    openUrlInNewWindow(url);
} else {
    // do other stuff
    openUrl(this.clickedAd.url);
}
jQuery.Event("click", {metaKey: true, keyCode: 91});
我正在使用
$(选择器).trigger('click',event)
调用该方法。我尝试过创建这样的活动:

// event is a jQuery event
if (event.metaKey || event.ctrlKey) {
    // do stuff
    openUrlInNewWindow(url);
} else {
    // do other stuff
    openUrl(this.clickedAd.url);
}
jQuery.Event("click", {metaKey: true, keyCode: 91});
但是jQuery转换了我传入的事件,似乎去掉了
keyCode
metaKey
属性,因此当我在事件处理程序中收到它时
metaKey
总是
false

创建Ctrl-click事件的正确方法是什么

var e = jQuery.Event( "click", { keyCode: 91, ctrlKey: true } );

$(".selector").trigger(e);
那工作


看一看这个问题:谢谢,但我的问题不是关于处理事件。这是关于生成它们的。谢谢!我实际上是错误地触发了事件。我正在做
$(选择器)。触发器('click',myEvent)
:/