2012-02-21 13 views
20

Basta chiedersi se esiste un modo per attivare uno Ctrl + CLIC (o qualsiasi tasto qualsiasi + CLIC) in jQuery. Sto pensando a qualcosa di simile al seguente:jquery trigger ctrl + click

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

o

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

Grazie!

+0

Per quale scopo? L'attivazione di un clic in JS non attiva un collegamento ipertestuale, ad esempio. –

+2

Penso che sia sempre meglio attivare il RISULTATO di un'azione rispetto all'azione stessa: cambia window.location invece di fare clic su ancora con JS, ad esempio. – hayavuk

+0

Sto usando un controllo web che è una vista a colonne (simile a OSX Finder - vedi "http://christianyates.com/comment/1529" per maggiori dettagli). Voglio selezionare gli elementi in questa vista della colonna al caricamento della pagina (parte del ritorno a ciò che l'utente ha selezionato prima) e lo sto facendo attualmente attivando CLIC sugli elementi nella vista della colonna. Una colonna può avere più elementi selezionati e ciò dovrebbe essere fatto con CTRL + CLICK. Quindi il motivo per cui voglio attivare quell'evento. – Cricri

risposta

18

sì questo funzionerà per voi:

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

Ho provato questo per una delle mie estensioni di google per Chrome ma non ho potuto funzionare. Grazie per aver sollevato una speranza :) – Savaratkar

+0

Non sembra funzionare per OSX. Ho provato 'e.metaKey = true' e non funziona neanche. –

+0

Non funziona per me in Chrome 44 – Daniel