Ho appena notato che live()
è già deprecato in jQuery. Ho una domanda veloce (solo per accertarmi quale sia il metodo più efficiente, più veloce e aggiornato). Ho myfunction()
e voglio bind()
per tutti gli elementi attuali e futuri con attr("title") == 'x'
.Come aggiungere evento jQuery a tutti gli elementi attuali e futuri?
E 'questo quello che dovrei usare:
jQuery("???").bind("mouseup", myfunction);
jQuery("???").bind("keyup", myfunction);
O questo:
jQuery("???").delegate("???", "mouseup", myfunction);
jQuery("???").delegate("???", "keyup", myfunction);
O questo:
jQuery("???").on("mouseup", "???", myfunction);
jQuery("???").on("keyup", "???", myfunction);
Inoltre sto avendo problemi specificando corretta selettore (s) - perché alcuni di essi consentono di allegare eventi a una cosa (come corpo o documento) e consentono il secondo selettore.
Grazie! Questo è quello che sto cercando :) Penso che la domanda abbia già una risposta. – Atadj
@Paul: Inoltre, se hai un genitore comune agli elementi che corrispondono al selettore '[title =" x "]', sostituisci '$ (document)' con '$ (" # id_of_common_parent ")' come sarà più efficiente. –
Grazie! Un'ultima cosa: cosa succede se voglio usare "contentEditable" invece di "Title" e "contentEditable" può essere: (1) 'contentEditable =" contentEditable "', (2) 'contentEditable =" true "' or just 'contentEditable '. Questi sono 3 attributi che contrassegnano come 'true' - in caso di' title = "x" 'c'è solo 1 possibilità. Questo è il secondo caso di cui ho bisogno. – Atadj