jQuery: hvordan bygge en forlengelse Plugin

Tirsdag, 23. september 2008

Som alle biblioteker av denne typen også jQuery kan utvide sin grunnleggende funksjonalitet ved hjelp av real-plugin-modulen. Respektere reglene i sin drift, nemlig restituiendo alltid en peker til den valgte eller jQuery seg selv, kan du skrive en plugin-modul med noen få linjer kode. Ta som eksempel koden foreslått i jQuery mot alle: en målestokk med 5 nettleser som var (etter korrigering rapportert av Luca):

JavaScript:
  1. ) . css ( 'cursor' , 'pointer' ) . click ( $ ( 'H2.dropdown'). Css ( "markøren", "pekeren"). Klikk (
  2. funksjon () (
  3. $ ( this ) . next ( ) . is ( ':hidden' ) ) $ ( this ) . next ( ) . slideDown ( ) ; else $ ( this ) . next ( ) . slideUp ( ) ; hvis ($ (denne). neste (). er ( ': hidden')) $ (denne). neste (). slideDown (); else $ (denne). neste (). slideUp ();
  4. )
  5. );

Ipotizionamo ønsker trasfromare denne "funksjonen" i en metode som kalles direkte av jQuery. Ring vår metode simpleAccordion() Først av alt vi lage en fil med syntaks:

[nomeplugin].jquery.js

Code:
  1. . js jquery. [nomeplugin]. js

Så i vårt tilfelle:

simpleaccordion.jquery.js

Code:
  1. jquery. simpleaccordion. js

Innenfor denne filen skriver:

JavaScript:
  1. / **
  2. * @ Forfatter User
  3. * /
  4. / **
  5. * SimpleAccordion Plugin demo
  6. *
  7. * /
  8. ( $ ) { (Function ($) (
  9. ( { $. Fn. Extend ((
  10. options ) { simpleAccordion: function (ekstrautstyr) (
  11. var defaults = (
  12. hastighet: "normalt"
  13. );
  14. ( defaults, options ) ; Var = $ alternativer. forlenge (defaults, valg);
  15. ( function ( ) { returnere dette. hvert (funksjon () (
  16. this ) ; __e var = $ (denne);
  17. . css ( 'cursor' , 'pointer' ) . click ( function ( ) { $ (__e). Css ( "markøren", "pekeren"). Klikk (funksjon () (
  18. $ ( this ) . next ( ) . is ( ':hidden' ) ) hvis ($ (denne). neste (). er ( ': hidden'))
  19. ) . next ( ) . show ( options. speed ) ; $ (Denne). Neste (). Vis (options.ico hastighet);
  20. ellers
  21. ) . next ( ) . hide ( options. speed ) ; $ (Denne). Neste (). Skjul (options.ico hastighet);
  22. ));
  23. ));
  24. )
  25. ));
  26. ; )) (JQuery);

Denne filen må lastes etter jQuery bibliotek, ved hjelp av vanlig form for inkludering:

<script type="text/javascript" src="simpleaccordion.jquery.js"></script>

HTML:
  1. src = "jquery.simpleaccordion.js" > </script> <script type = "text/javascript" src = "jquery.simpleaccordion.js"> </ script>

Vår "forlengelse" er nå tilgjengelig og vi kan prøve det med følgende kode:

JavaScript:
  1. ) . simpleAccordion ( ) . click ( function ( ) { $ ( this ) . css ( 'color' , 'red' ) } ) ; $ ( 'H2.dropdown'). SimpleAccordion (). Klikk (funksjon () ($ (denne). Css ( 'color', 'rød')));
  2. / / Eller endre standard
  3. ) . simpleAccordion ( { speed: 'slow' } ) . click ( function ( ) { $ ( this ) . css ( 'color' , 'red' ) } ) ; $ ( 'H2.dropdown'). SimpleAccordion ((hastighet: "treg")). Klikk (funksjon () ($ (denne). Css ( 'color', 'rød')));

I de ovennevnte endringer fargen h2 våre forlengelse oppfyller standarden jQuery, den puntantore tilbake til valgt (i dette tilfellet h2.dropdown En mulig skjelett er dette:

JavaScript:
  1. / **
  2. * Skisse jQuery Plugin
  3. *
  4. * /
  5. ( $ ) { (Function ($) (
  6. ( { $. Fn. Extend ((
  7. options ) { mymethod: function (ekstrautstyr) (
  8. ; var defaults = ();
  9. ( defaults, options ) ; Var = $ alternativer. forlenge (defaults, valg);
  10. ( function ( ) { returnere dette. hvert (funksjon () (
  11. this ) ; __e var = $ (denne);
  12. / / Todo
  13. / / Standard valg i "valg"
  14. ));
  15. )
  16. ));
  17. ; )) (JQuery);

Related Post

3 kommentarer til: "jQuery: hvordan bygge en forlengelse Plugin"

  1. Torsdag, september 25th, 2008 at 10:17
    Luke sa:

    Hallo,
    endelig noen som skriver på italiensk som det bygger en plugg med jquery!

    Vi fortsatt gjøre en avklaring, kan jeg? :)
    Vanligvis mønsteret er brukt jquery. [Nomeplugin]. JS mens du invertere i [nomeplugin]. Jquery.js
    Det er det :)

    PS: Når du kommer tilbake for å snakke om Actionscript3? :)

    Svar Siter
  2. Torsdag, september 25th, 2008 at 10:31
    Giovambattista Fazioli sa:

    @ Luke: noen endelig forsiktig! Jeg liker denne setningen ... faktisk i den offisielle dokumentasjonen av jQuery er vist syntaksen som viser deg, nemlig: jquery.[insert name of plugin].js
    Min feil ... selv om jeg må si, er ikke dårlig enten [insert name of plugin].jquery.js for å indikere en "forlengelse". Men husk at andre lesere, for å avslutte eksempel, fungerer også med filnavn "galt".
    Kom tilbake snart for å snakke om Actionscript 3 selv - håper jeg - i en Flash-CS4; nettopp gitt ut :)

    Svar Siter
  3. Tirsdag, 14. oktober 2008 at 10:02
    Simone D'Amico »Blog Archive» Opprett en plugg for jQuery sa:

    [...] Opprett en plugg, akkurat bare har diskrete kunnskap av Javascript. Giovambattista Fazioli denne koblingen har skrevet en interessant veiledning i hvordan du skal lage vår plugin-modulen [...]

Legg igjen en kommentar

TAG XHTML <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> href="" <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Bruk <pre> å legge koden