我希望能够以编程方式创建 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);
}
我用$(selector).trigger('click', event)
调用方法。我尝试过像这样创建活动:
jQuery.Event("click", {metaKey: true, keyCode: 91});
但是jQuery会转换我传入的事件并且似乎删除了keyCode
和metaKey
属性,所以当我在事件处理程序metaKey
中收到它时总是{{1} }。
创建 Ctrl -click事件的正确方法是什么?
答案 0 :(得分:1)
var e = jQuery.Event( "click", { keyCode: 91, ctrlKey: true } );
$(".selector").trigger(e);
那工作吗?
有一个jsfiddle:http://jsfiddle.net/8n3u6/