Właśnie zauważyłem, że live()
jest już przestarzałe w jQuery. Mam szybkie pytanie (aby upewnić się, która metoda jest najbardziej wydajna, najszybsza i aktualna). Mam myfunction()
i chcę bind()
go do wszystkich obecnych i przyszłych elementów z attr("title") == 'x'
.Jak dodać wydarzenie jQuery do wszystkich obecnych i przyszłych elementów?
Czy to, co powinno się używać:
jQuery("???").bind("mouseup", myfunction);
jQuery("???").bind("keyup", myfunction);
albo to:
jQuery("???").delegate("???", "mouseup", myfunction);
jQuery("???").delegate("???", "keyup", myfunction);
albo to:
jQuery("???").on("mouseup", "???", myfunction);
jQuery("???").on("keyup", "???", myfunction);
Jestem również mające problem z podaniem prawidłowego wyboru (y) - ponieważ niektóre z nich pozwalają przypisać zdarzenie do jednej rzeczy (np. ciało lub dokument) i pozwalają na drugi selektor.
Dzięki! Tego właśnie szukam :) Myślę, że na to pytanie już udzielono odpowiedzi. – Atadj
@Paul: Również jeśli masz wspólny nadrzędny element, który pasuje do selektora '[title =" x "]', zamień '$ (document)' na '$ (" # id_of_common_parent ")' as will will be bardziej wydajny. –
Dzięki! Ostatnią rzeczą - co jeśli chcę użyć "contentEditable" zamiast "Title" i "contentEditable" może być: (1) 'contentEditable =" contentEditable "', (2) 'contentEditable =" true "' lub just 'contentEditable '. Są to 3 atrybuty, które oznaczają "true" - w przypadku 'title =" x "' istnieje tylko jedna możliwość. To drugi przypadek, którego potrzebuję. – Atadj