JavaScript-suorituskoodikoodi ja opas

Verkkosivusi suunnittelu JavaScriptillä vaatii huomiota koodisi esiintymisjärjestykseen ja kapseloitko koodin toimintoihin tai objekteihin, jotka kaikki vaikuttavat koodin järjestykseen kulkee.

JavaScriptin sijainti verkkosivustollasi

Koska sivusi JavaScript toimii tiettyjen tekijöiden perusteella, harkitaan, mihin ja miten lisätä JavaScripti verkkosivulle.

Periaatteessa on kolme sijaintia, joihin voimme liittää JavaScriptin:

  • Suoraan sivun yläosaan
  • Suoraan sivun runkoon
  • Tapahtumien käsittelijältä / kuuntelijalta

Sillä ei ole merkitystä, onko JavaScripti verkkosivun sisällä itsessään tai sivulle linkitetyissä ulkoisissa tiedostoissa. Sillä ei myöskään ole merkitystä, onko tapahtumakäsittelijät koodattu sivulle vai lisäävätkö JavaScript itse JavaScriptiä (paitsi että niitä ei voida käynnistää ennen niiden lisäämistä).

Koodi suoraan sivulla

Mitä tarkoittaa sanoa, että JavaScript on suoraan sivun päässä tai rungossa? Jos koodia ei ole suljettu funktioon tai objektiin, se on suoraan sivulla. Tässä tapauksessa koodi suoritetaan peräkkäin heti, kun koodia sisältävä tiedosto on latautunut riittävästi siihen pääsyyn.

instagram viewer

Funktion tai objektin sisällä oleva koodi suoritetaan vain, kun tätä funktiota tai objektia kutsutaan.

Pohjimmiltaan tämä tarkoittaa, että kaikki sivusi pään ja rungon sisällä olevat koodit, jotka eivät ole toiminnon tai objektin sisällä, ajetaan sivun latautuessa - heti, kun sivu on ladannut riittävästi käyttää tätä koodia.

Tämä viimeinen bitti on tärkeä ja vaikuttaa siihen järjestykseen, jossa sijoitat koodin sivulle: minkä tahansa suoraan sivulle sijoitetun koodin, jonka on oltava vuorovaikutuksessa sivun elementtien kanssa, on näytettävä jälkeen sen sivun elementit, josta se on riippuvainen.

Yleensä tämä tarkoittaa, että jos käytät suoraa koodia vuorovaikutuksessa sivusi sisällön kanssa, tällainen koodi tulisi asettaa rungon alaosaan.

Koodi toimintojen ja objektien sisällä

Toimintojen tai objektien sisällä oleva koodi suoritetaan aina, kun tätä toimintoa tai objektia kutsutaan. Jos sitä kutsutaan koodista, joka on suoraan sivun päässä tai rungossa, niin sen paikka Suoritusmääräys on tosiasiallisesti kohta, jossa toiminto tai objekti kutsutaan suorasta koodi.

Tapahtumien käsittelijöille ja kuuntelijoille osoitettu koodi

Toiminnon määrittäminen tapahtumakäsittelijälle tai kuuntelijalle ei johda toiminnon suorittamiseen siinä kohdassa, johon se on osoitettu - edellyttäen, että olet tosiasiallisesti osoitetaan itse toiminto ja ei käynnissä toiminto ja palautetun arvon määrittäminen. (Siksi et yleensä näe () toiminnon nimen lopussa, kun se osoitetaan tapahtumalle lisäyksen jälkeen suluissa suorittaa funktion ja antaa palautetun arvon funktion määrittämisen sijasta itse.)

Tapahtumien käsittelijöihin ja kuuntelijoihin liitetyt toiminnot suoritetaan, kun tapahtuma, johon he ovat liitetty, laukaistaan. Suurimman osan tapahtumista laukaisevat kävijät, jotka ovat vuorovaikutuksessa sivusi kanssa. Joitakin poikkeuksia on kuitenkin olemassa, kuten ladata Ikkunassa tapahtuva tapahtuma, joka laukaistaan, kun sivu on ladattu.

Sivuelementtien tapahtumiin liitetyt toiminnot

Kaikki sivun elementtien tapahtumiin liitetyt toiminnot suoritetaan kunkin vierailijan toimien mukaisesti - tämä koodi suoritetaan vain, kun tietty tapahtuma tapahtuu sen käynnistämiseksi. Tästä syystä ei ole väliä, onko koodi koskaan suoritettu tietylle vierailijalle, koska kyseinen vierailija ei selvästikään ole suorittanut sitä vaativaa vuorovaikutusta.

Kaikki tämä tietysti edellyttää, että vierailija on päässyt sivullesi selaimella, jolla on JavaScript käytössä.

Räätälöidyt vierailijakäyttöohjelmat

Jotkut käyttäjät ovat asentaneet erityisiä skriptejä, jotka saattavat olla vuorovaikutuksessa verkkosivusi kanssa. Nämä komentosarjat suoritetaan kaikkien suoran koodisi jälkeen, mutta ennen kaikki kuormatapahtumien käsittelyyn kiinnitetyt koodit.

Koska sivusi ei tiedä mitään näistä käyttäjän komentosarjoista, et voi tietää, mitä nämä ulkoiset skriptit voivat tehdä - ne voivat ohittaa minkä tahansa koodin tai kaikki koodin, jonka olet liittänyt eri tapahtumiin, joille olet määrännyt käsittely. Jos tämä koodi ohittaa tapahtumakäsittelijät tai kuuntelijat, vastaus tapahtumalaukaisuihin suorittaa käyttäjän määrittelemän koodin koodisi sijaan tai sen lisäksi.

Koti-kohta tässä on, että et voi olettaa, että koodin, joka on suunniteltu toimimaan sivun lataamisen jälkeen, sallitaan suorittaa suunnitellulla tavalla. Lisäksi huomaa, että joillakin selaimilla on vaihtoehtoja, jotka sallivat joidenkin tapahtumakäsittelijöiden poistamisen käytöstä selainta, jolloin kyseinen tapahtuman liipaisin ei käynnistä vastaavaa tapahtumakäsittelijää / kuuntelijaa omassa koodi.