2012-02-21 165 views
20

只是想知道是否有任何方法觸發Ctrl +在jQuery中點擊(或只是任何鍵+點擊)。我想到的是類似以下內容:jquery觸發Ctrl +點擊

var e = jQuery.Event("keydown"); 
e.which = 17; 
$('a.'+id, this._parent).trigger(e).trigger('click'); 

var e = jQuery.Event("click"); 
e.ctrlKey = true; 
$('a.'+id, this._parent).trigger(e); 

謝謝!

+0

目的是什麼?例如,觸發JS中的點擊不會觸發超鏈接。 – 2012-02-21 11:49:35

+2

我認爲觸發動作的結果比動作本身總是更好:例如,更改window.location,而不是使用JS單擊錨。 – hayavuk 2012-02-21 11:53:02

+0

我正在使用一個Web控件,它是一個列視圖(與OSX Finder類似 - 請參閱'http://christianyates.com/comment/1529'以獲取更多詳細信息)。我想在頁面加載時選擇此列視圖中的項目(返回到用戶之前選擇的部分),並且我正在通過在列視圖中觸發CLICK元素來執行此操作。一列可以選擇多個元素,並使用CTRL + CLICK完成。所以我想要觸發這個事件。 – Cricri 2012-02-21 11:56:49

回答

18

是這會爲你工作:

var e = jQuery.Event("click"); 
e.ctrlKey = true; 
$('#id').trigger(e); 
+0

我試過這個我的谷歌Chrome擴展之一,但無法正常工作。雖然thanx提出了希望:) – Savaratkar 2015-03-31 09:06:50

+0

它似乎不適用於OSX。我嘗試了'e.metaKey = true',它也不起作用。 – 2015-04-10 03:13:21

+0

不適用於我在Chrome 44 – Daniel 2015-07-29 07:32:29