Turinys
„jQuery“ yra „Javascript“ biblioteka, leidžianti supaprastinti būdą bendrauti su HTML dokumentais, manipuliuoti DOM medžiu, tvarkyti įvykius, kurti animaciją ir pridėti sąveiką su technika AJAX į tinklalapius.Nuo „jQuery“ 1.7 versijos turime metodą on (), kuris suteikia mums visas būtinas funkcijas įvykiams valdyti. Šio metodo dėka mums nebereikia senojo įrišimo (), tiesioginio () ar deleguoti (), bet taip pat nereikia suliejimo (), fokusavimo (), paspaudimo (), užvedimo () ir kitų.
Kaip ir įjungtas (), mes turime priešingą, išjungtą (), kuris pašalina įvykius, priskirtus įjungus ().
Norėdami geriau suprasti on () metodą, pamatysime keletą pavyzdžių.
Tarkime, kad norime vykdyti funkciją spustelėjus mygtuką:
(funkcija () {$ ('mygtukas'). spustelėkite (funkcija () {// vykdytinas kodas});}) ();
Panašu, kad tradiciškai tai darytume paspaudę (). Bet jei pažvelgsime į „jQuery“ kodą, pamatysime, kad iš tikrųjų vyksta tai, kad iškviečiamas „on ()“ metodas, todėl greičiausias dalykas yra tai padaryti:
(funkcija () {$ ('mygtukas'). on ('spustelėkite', funkcija () {// vykdytinas kodas});}) ();
Tai yra tiesiausias kelias. Tas pats ir su kitais metodais, tokiais kaip change (), hover (), mouseenter () ir tt …
Pažvelkime į „jQuery“. Jei atsisiųsime 1.7 ar naujesnę versiją ir pažvelgsime į jos kodą, pamatysime:
jQuery.each (("neryškus dėmesys sutelkiant dėmesį į apkrovą keisti dydį slinkimas iškrovimas spustelėkite dblclick pelės klavišas pelės žymeklis perkelti pelės žymeklį pelės žymeklį pelės žymeklio pakeitimas pasirinkite pasirinkti klavišo klavišo paspaudimo klavišo klaidos kontekstinis meniu"). split (""), f function (i, name) {// Tvarkyti įvykio įrišimą jQuery.fn [vardas] = funkcija (duomenys, fn) {if (fn == null) {fn = duomenys; duomenys = null;} grąžinti argumentus.length -> 0? duomenys, fn): this.trigger (vardas);};
Iš čia mums tik įdomu matyti, kad metodai „sulieti, sufokusuoti, fokusuoti, sutelkti dėmesį, įkelti, pakeisti dydį, slinkti, iškrauti, spustelėti,„ dblclick “,„ mousedown “, pelės žymeklis, pelės perkėlimas, pelės žymeklis, pelės žymeklis, pelės žymeklis,„ mouseleave “, pakeisti, pasirinkti, pateikti, klavišų paspaudimas, klavišų paspaudimas, klavišų derinimas, klaida ir kontekstinis meniu "pabaigoje viskas baigiasi" this.on (vardas, nulis, duomenys, fn) ".
įrišti (), gyventi () ir deleguoti ()
Anksčiau taip pat buvo daroma:
(function () {$ ('button'). bind ('click', function () {// kodas, kuris bus vykdomas spustelėjus mygtuką});}) ();
Arba, jei norėtume, kad įvykis veiktų net pridėjus naujų „mygtuko“ elementų prie dokumento, mes naudotume „live“ () metodą:
(function () {$ ('button'). live ('click', function () {// kodas, kurį reikia vykdyti spustelėjus mygtuką});}) ();
Vėliau „jQuery“ pristatė „delegate ()“, kuris leido mums priskirti įvykį prie konteksto. Pvz., Jei mygtukas yra (arba bus, jei bus pridėtas vėliau) „div“ viduje su klase „container“:
(function () {$ ('div.container'). delegate ('button', 'click', function () {// kodas, kurį reikia vykdyti spustelėjus mygtuką});}) ();
Tačiau, kaip ir ankstesniuose, abu „bind“ (), „live“ () arba „delegate“ () tik skambina on () metodui.Ar jums patiko ir padėjo ši pamoka?Galite apdovanoti autorių paspausdami šį mygtuką, kad suteiktumėte jam teigiamą tašką