Wiem, że w JavaScript składnia jest następująca:
function myfunction(param){
//some code
}
Czy istnieje sposób zadeklarowania funkcji w jQuery, którą można dodać do elementu? Na przykład:
$('#my_div').myfunction()
javascript
jquery
function
multimediaxp
źródło
źródło
$('#myDatePickerfield').datePicker();
$("#someElement").hide()
lub.addClass()
...Odpowiedzi:
Z Dokumentów :
To robisz
źródło
$('my_div').myfunction();
zadzwonić<my_div></my_div>
. Potrzebny jest tam znak skrótu, aby odnosić się do identyfikatoramy_div
.Pomimo wszystkich odpowiedzi, które już otrzymałeś, warto zauważyć, że nie trzeba pisać wtyczki, aby używać jQuery w funkcji. Z pewnością jeśli jest to prosta, jednorazowa funkcja, uważam, że napisanie wtyczki to przesada. Można to zrobić o wiele łatwiej, po prostu przekazując selektor do funkcji jako parametr . Twój kod wyglądałby mniej więcej tak:
Zauważ, że
$
nazwa zmiennej$param
nie jest wymagana. To mój zwyczaj, aby ułatwić sobie zapamiętanie, że ta zmienna zawiera selektor jQuery. Możesz również użyćparam
.źródło
Chociaż istnieje mnóstwo dokumentacji / samouczków, prosta odpowiedź na twoje pytanie brzmi:
Wewnątrz tej funkcji
this
zmienna odpowiada opakowanemu zestawowi jQuery, na którym wywołałeś swoją funkcję. Więc coś takiego:... spłukuje do konsoli liczbę elementów z klasą
foo
.Oczywiście w semantyce jest coś więcej (jak również najlepsze praktyki i cały ten jazz), więc przeczytajcie o tym.
źródło
Aby udostępnić funkcję na obiektach jQuery, dodajesz ją do prototypu jQuery (fn to skrót do prototypu w jQuery) w następujący sposób:
Zwykle nazywa się to wtyczką jQuery .
Przykład - http://jsfiddle.net/VwPrm/
źródło
Tak - opisujesz wtyczkę jQuery.
Aby napisać wtyczkę jQuery, należy utworzyć funkcję w JavaScript i przypisać ją do właściwości obiektu
jQuery.fn
.Na przykład
W ramach funkcji wtyczki,
this
słowo kluczowe jest ustawione na obiekt jQuery, na którym wtyczka została wywołana. Więc kiedy to zrobisz:Następnie
this
wewnątrzmyfunction
zostanie ustawiony obiekt jQuery zwracany przez$('#my_div')
.Zobacz http://docs.jquery.com/Plugins/Authoring do pełnej historii.
źródło
źródło
Możesz także użyć rozszerzenia (sposobu tworzenia wtyczek jQuery):
Stosowanie:
źródło
Możesz napisać własne wtyczki jQuery (funkcja, którą można wywołać na wybranych elementach), jak poniżej:
Nazwij to później:
źródło
Tak, metody stosowane do elementów wybranych za pomocą jquery, nazywane są wtyczkami jquery, a dokumentacja jquery zawiera sporo informacji na temat tworzenia .
Warto zauważyć, że jquery jest po prostu javascript, więc nie ma nic specjalnego w „metodzie jquery”.
źródło
Utwórz metodę „kolorowania”:
Użyj tego:
Ten prosty przykład łączy w sobie najlepsze sposoby tworzenia podstawowej wtyczki w dokumentach jQuery oraz odpowiedzi od @Candide , @Michael .
this
może być niestandardowa metoda . (Dzięki @Potheek.)źródło
Zawsze możesz to zrobić:
źródło
Wygląda na to, że chcesz rozszerzyć obiekt jQuery za pomocą jego prototypu (inaczej napisać wtyczkę jQuery ). Oznaczałoby to, że każdy nowy obiekt utworzony przez wywołanie funkcji jQuery (
$(selector/DOM element)
) miałby tę metodę.Oto bardzo prosty przykład:
Próbny
źródło
Najprostszym przykładem wykonania dowolnej funkcji w jQuery jest
źródło