1 00:00:00,000 --> 00:00:00,380 2 00:00:00,380 --> 00:00:03,000 >> ZVUČNIK 1: Sada u tom posljednjem primjeru, Podsjećamo da smo mjestimice neke 3 00:00:03,000 --> 00:00:07,170 JavaScript koda unutar HTML-a, posebno, u vrijednosti 4 00:00:07,170 --> 00:00:10,460 Atribut pozvao Podnijeti za tu oznaku obrasca. 5 00:00:10,460 --> 00:00:12,850 Sada za male stranice, to nije tako velika stvar. 6 00:00:12,850 --> 00:00:15,950 No, kako je web stranica dobiva više i više složeno, jednostavno stavljajući svoje 7 00:00:15,950 --> 00:00:19,660 JavaScript kod tu i tamo unutra od vrijednosti atributa nije 8 00:00:19,660 --> 00:00:20,830 najbolji dizajn. 9 00:00:20,830 --> 00:00:23,440 Najbolje je da smo faktor da se i barem ga staviti unutar 10 00:00:23,440 --> 00:00:25,200 skripte tag centralno. 11 00:00:25,200 --> 00:00:26,080 >> Kako to učiniti? 12 00:00:26,080 --> 00:00:30,040 Pa neka se vrate u formu i oznaku Prvi izbrisati ovaj atribut i njegovih 13 00:00:30,040 --> 00:00:31,780 Cijenimo uopce. 14 00:00:31,780 --> 00:00:35,730 Onda se ovdje, a ne definirati funkcija zove Pozdravite, neka je objesiti na 15 00:00:35,730 --> 00:00:39,405 na liniji koda koji u konačnici smo će i dalje žele izvršiti i zamijeniti 16 00:00:39,405 --> 00:00:41,560 Pozdravite funkcija kao što slijedi. 17 00:00:41,560 --> 00:00:48,190 Document.get element po ID citiram Citat završen demo - 18 00:00:48,190 --> 00:00:52,410 gdje demo, podsjetimo, je jedinstvena identifikator forma - 19 00:00:52,410 --> 00:00:56,600 Točka na dostavi, koje podsjećaju je ime rukovatelja događaja u kojima 20 00:00:56,600 --> 00:00:57,710 mi smo zainteresirani. 21 00:00:57,710 --> 00:01:01,990 I neka je dodijeliti da se na dostavi rukovatelj vrijednost koja je zapravo 22 00:01:01,990 --> 00:01:03,740 sama funkcionirati. 23 00:01:03,740 --> 00:01:06,390 >> Sada primijetiti da nisam zapravo pozivom na funkciju ovdje. 24 00:01:06,390 --> 00:01:10,650 Ja sam umjesto definiranja anonimni, inače poznat kao funkcija lambda, 25 00:01:10,650 --> 00:01:14,100 određivanjem između tih vitičastim zagradama Gomila kod koji bi trebao 26 00:01:14,100 --> 00:01:15,490 zapravo treba izvršiti. 27 00:01:15,490 --> 00:01:18,500 Naime, kod koje sam bih izvršiti je da linija koja sam imao 28 00:01:18,500 --> 00:01:23,370 prije, a onda ćemo dodati da povratak false, tako da je ovaj oblik nije 29 00:01:23,370 --> 00:01:26,950 konačnici podnijeti do kraja udaljenog web poslužitelja na tradicionalan način. 30 00:01:26,950 --> 00:01:30,345 >> Idemo sada spremiti ovu datoteku, otvorite ga u pregledniku, i vidjeti što se događa. 31 00:01:30,345 --> 00:01:33,050 32 00:01:33,050 --> 00:01:39,800 http://localhost/dom-1.html. 33 00:01:39,800 --> 00:01:43,060 Idemo sada upisati u moje ime, David, Podnijeti. 34 00:01:43,060 --> 00:01:46,900 I ništa ne čini da se dogodilo osim URL moje stranice čini se da 35 00:01:46,900 --> 00:01:52,580 su se promijenila, kao da je obrazac zapravo podnosi iste datoteke. 36 00:01:52,580 --> 00:01:53,870 >> Sad zašto bi to moglo biti? 37 00:01:53,870 --> 00:01:55,340 Pa trebam više podataka. 38 00:01:55,340 --> 00:01:58,700 Tako ćemo ići naprijed i otvoriti Chrome-a Razvojni alati, tako da ja mogu zapravo 39 00:01:58,700 --> 00:02:01,440 pogled na prozor konzole vidjeti ako sam učinio nešto loše. 40 00:02:01,440 --> 00:02:03,330 Ja mogu pristupiti da se putem nekoliko načina. 41 00:02:03,330 --> 00:02:07,250 Od kojih se pomoću ovog izbornika ovdje zatim pod Alati, a zatim prema dolje do 42 00:02:07,250 --> 00:02:08,509 Razvojni alati. 43 00:02:08,509 --> 00:02:12,890 >> I primijetiti ovdje u kartici konzole, postoji neuhvaćen tipa pogreška, ne mogu 44 00:02:12,890 --> 00:02:15,390 postavljen nekretninu na podnijeti od null. 45 00:02:15,390 --> 00:02:16,900 Sad zašto bi to moglo biti? 46 00:02:16,900 --> 00:02:21,380 Pa natrag u mom izvorni kod ovdje, obavijest da je dana dostaviti mislim da je 47 00:02:21,380 --> 00:02:25,360 svojstvo elementa čije Jedinstveni identifikator je demo. 48 00:02:25,360 --> 00:02:27,810 Element, opet, samo je čvor u stablu. 49 00:02:27,810 --> 00:02:30,870 >> Tako se čini da je moj browser ne mislim da je taj element 50 00:02:30,870 --> 00:02:32,500 ili čvor postoji još. 51 00:02:32,500 --> 00:02:33,790 I doista, to ne. 52 00:02:33,790 --> 00:02:37,690 Sjetite se da je web stranica se raščlaniti ili pročitati u web pregledniku, od vrha do dna, 53 00:02:37,690 --> 00:02:38,430 lijeva na desno. 54 00:02:38,430 --> 00:02:41,810 I tako kad JavaScript kôd naišao, obično, to je izvršen 55 00:02:41,810 --> 00:02:42,700 odmah. 56 00:02:42,700 --> 00:02:46,460 >> No, u ovom slučaju, nismo ni stečen ali na dijelu doma, 57 00:02:46,460 --> 00:02:51,100 HTML, u kojem se taj obrazac s jedinstvenim Oznaka Demo je proglašen. 58 00:02:51,100 --> 00:02:54,320 I tako smo se pokušava izvršiti mom JavaScript kod prije tog čvora čak 59 00:02:54,320 --> 00:02:58,530 postoji u stablu koje, naravno, problematično jer onda, sigurno, 60 00:02:58,530 --> 00:03:01,390 Sam element bit će ništavan u tom trenutku u vremenu. 61 00:03:01,390 --> 00:03:02,390 >> Pa kako to popraviti? 62 00:03:02,390 --> 00:03:03,810 Pa imamo nekoliko rješenja. 63 00:03:03,810 --> 00:03:07,200 No, pokušajmo najjednostavniji strane preseljenja moj scenarij tag iz glave 64 00:03:07,200 --> 00:03:11,560 označiti na mom tijelu, ali konkretno, prema Dno je moja stranica tijelo tako 65 00:03:11,560 --> 00:03:14,170 da je ispod čvorova i pitanja. 66 00:03:14,170 --> 00:03:19,930 Naime, neka je istaknuti i izrezati otvoreni tag i blizu oznake za pisma 67 00:03:19,930 --> 00:03:24,720 i preseliti taj cijeli blok koda na dnu datoteke ovdje. 68 00:03:24,720 --> 00:03:27,690 >> Sada to nije nužno najčišći dizajnirati, ali barem će 69 00:03:27,690 --> 00:03:29,530 provoditi pravo redoslijeda operacija. 70 00:03:29,530 --> 00:03:31,495 Idemo spremite datoteku i učitati u pregledniku. 71 00:03:31,495 --> 00:03:34,620 72 00:03:34,620 --> 00:03:40,240 Idemo ponovno učitati stranicu, ponovno ulaz moje ime, i tamo, Hello David se vratio. 73 00:03:40,240 --> 00:03:42,784