- tip

, hurtigt tip - jquery newbs: hold op med at hoppe i poolen,,,,, 1,,,,,,,,, 45,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, som redaktør for nettuts +, jeg kommer til at gennemgå en masse kode fra resten af indlæg.til trods for, at jquery har været til rådighed i år, er der stadig en hyppig fejl, som jeg ser mere end noget andet.,,,, f.eks, finder følgende stykke kode: $(. nav "). klik (function() {$(det). hide(). $(denne). css ('color", "røde"); $(det). show(); indberetning ('something andet '); $(det). hide(); tilbage falske}), kode ovenfor er alt for kompliceret, for en række forskellige årsager.må ikke bekymre dig over, hvad den kode, der rent faktisk er (det er volapyk.jeg vil have dig til at se på alle disse henvisninger til $(det),.,,, af den dom, som en pool.,, af dom som en pool.kan du huske, da du var et barn, og jeg vil dykke ned i poolen for mønter, mens dine forældre opførte sig, som om de var?det vil være vores den sammenligning hermed., hver gang du bruger $(". someclass), jquery hop i poolen (dom), og søger at mønt (knudepunkter).så når du reference det flere gange i en funktion, der er en masse at dykke.eller til at skære den sammenligning, det er spild af ressourcer og unncessary.derfor opfordrer jquery, hvis du ikke ønsker det?du skal udføre, hvad vi kalder "caching." $(. nav "). klik (funktion (e) (var - anker = $(det), anker. hide(). css ('color", "røde"). show(); indberetning ('something andet '); hide(); e. preventdefault() anker.;'); dette er meget renere.mens moderne browser motorer er utrolig hurtigt i disse dage, og at det vil være op til din stakkels kodning, så godt som muligt, burde du stadig bestræber sig på at skrive en effektiv kodeks, og ikke spilder al denne energi at hoppe i poolen.nu, teknisk set, hvis du består jquery en dom knude, som dette, betyder det ikke at sætte spørgsmålstegn ved dom.det vender tilbage til en jquery objekt.,, fordi udøvelsen af forskellen mellem to vil helt ærligt være ubetydelig, vi skriver ren kode for os.,,. eksempel 2, lad os tage en lidt mere kompliceret eksempel: øje. $(. øje li '). css ('position "," relative "); $(. øje li'). klik (function() {$(. øje li '). removeclass ('active) $(det). addclass ('active) $(dette). belastning ('somehref, function() {'); //eksempel $(dette). css ('top", "1px"))); denne kodeks er overalt.det er grimt, og ineffektive.lave nummer et er at slippe af med alle, at ccs.du ville kun sted på vej i deres javascript, hvis de værdier, der blev skabt en dynamisk udvikling.for eksempel, hvis du har brug for at beregne den nøjagtige beliggenhed et element bør være på skærmen, kan du bruge,. css ('left, calculatedvalue).i dette tilfælde kan eksporteres til en ekstern stylesheet.det efterlader os med: $(. øje li '). klik (function() {$(. øje li'). removeclass ('active) $(dette). belastning ('somehref, function() {'); //eksempel $(det). addclass ('active)}); dernæst igen, hvorfor bliver vi ved med at være den dom for. øje li, og $(det)?hold op med at hoppe i poolen.lad os "penge", hvor,. øje li,., var tabs = $(. øje li '); tekniske vurderingsorganer. klik (function() (tab. removeclass ('active) $(dette). belastning ('somehref, function() {'); //eksempel $(det). addclass ('active)}), bedre, men vi kalder stadig $(det), to gange, og det er ikke noget stort.men efter min erfaring, hvis du ikke standse det tidligt, og dette antal stiger hurtigt., var tabs = $(. øje li '); tekniske vurderingsorganer. klik (function() {var tab = $(det) tabletter. removeclass ('active) regning. addclass ('active'). belastning ('somehref, function() {'); //f.eks.}), filtrering, en anden (lidt under optimerede) løsning ville være at anvende filtrering, var tabs = $(. øje li'); tekniske vurderingsorganer. klik (function() (tab. removeclass ('active). - (en). addclass ('active). belastning ('somehref, function() {'); //f.eks.}), er forskellen i denne sag, er, at i stedet for at referere til $(det), vi bruger, filter(), en metode til at reducere indsamlingen af liste over poster ned til kun det var sammen.du bør tage væk, ja, verden vil ikke ende, hvis du reference, $(. tabletter), flere gange i funktion.javascript motorer er super hurtigt i disse dage.hvis du var til at afprøve opfyldelsen af det tusindvis af gange, er forskellen i gennemførelsen kunne være et par hundrede millisekunder.men spørgsmålet er: hvorfor vil du?nogle gange, når vi bruger enorme abstraktioner, som jquery, det er let at glemme, at $("øje"), faktisk er en funktion, der ligger et godt stykke kode.det bør også bemærkes, at disse begreber finder anvendelse på javascript i almindelighed, ikke kun jquery.anvendelse af teknikker, der er beskrevet ovenfor, caching, skrive renere kode... for dig selv.



Previous:
Next Page: