SPEAKER 1: Sekarang di bahawa contoh lepas, ingat bahawa kita diiringi beberapa JavaScript kod dalam HTML saya, khusus, di dalam nilai sifat yang dipanggil Pada Hantar untuk bahawa bentuk tag. Sekarang untuk laman kecil, ini tidak seperti masalah besar. Tetapi sebagai laman web mendapat lebih panjang dan lebih kompleks, hanya meletakkan anda JavaScript kod di sana sini di dalam daripada nilai sifat-sifat tidak adalah reka bentuk yang terbaik. Terbaik jika kita faktor yang keluar dan sekurang-kurangnya meletakkannya di dalam tag skrip secara berpusat. Bagaimana untuk melakukan ini? Nah mari kita kembali ke bentuk tag saya dan memadam sifat ini dan yang menghargai sama sekali. Kemudian di sini, dan bukannya menentukan fungsi dipanggil Sambut, mari kita tergantung pada kepada baris kod yang akhirnya kita masih mahu untuk melaksanakan dan menggantikan fungsi Sambut seperti berikut. Document.get Unsur Dengan ID memetik demo unquote - mana demo, ingat, adalah unik pengecam untuk bentuk itu sendiri - dot ke atas mengemukakan, yang ingat ialah nama yang daripada pengendali peristiwa di mana kita berminat. Dan mari kita menyerahhakkan bahawa pada mengemukakan pengendali nilai yang sebenarnya satu berfungsi sendiri. Sekarang notis bahawa saya tidak benar-benar memanggil satu majlis di sini. Saya bukannya menentukan tanpa nama, atau dikenali sebagai fungsi lambda, dengan menentukan antara pendakap kerinting sekumpulan kod yang perlu sebenarnya dilaksanakan. Secara khusus, kod yang saya suka untuk melaksanakan ialah garis yang saya mempunyai sebelum ini, dan kemudian mari kita menambah bahawa pulangan palsu supaya borang ini tidak akhirnya dihantar untuk menamatkan web jauh server dengan cara yang tradisional. Sekarang mari kita simpan fail ini, membukanya dalam pelayar, dan lihat apa yang berlaku. http://localhost/dom-1.html. Sekarang mari kita menaip nama saya, David, Hantar. Dan apa-apa nampaknya telah berlaku kecuali URL laman saya seolah- telah berubah seolah-olah bentuk itu dikemukakan untuk fail yang sama. Sekarang mengapa yang mungkin? Well, saya memerlukan maklumat lebih banyak. Jadi mari kita pergi ke hadapan dan membuka Chrome Alat Pembangun supaya saya boleh sebenarnya melihat tetingkap konsol untuk melihat jika saya telah melakukan sesuatu yang salah. Saya boleh akses yang melalui beberapa cara. Satu daripadanya adalah melalui menu ini di sini, maka di bawah Tools, kemudian turun ke Developer Tools. Dan notis di sini di tekan Console itu, terdapat satu ralat jenis uncaught, tidak boleh ditetapkan hartanah ke atas mengemukakan satu null. Sekarang mengapa yang mungkin? Nah kembali dalam kod sumber saya di sini, notis bahawa pada submit saya fikir adalah harta daripada unsur yang pengecam unik adalah demo. Satu elemen, sekali lagi, hanya nod dalam pokok. Jadi ternyata bahawa pelayar saya tidak berfikir bahawa elemen yang atau nod wujud yet. Dan sesungguhnya, ia tidak. Ingat bahawa laman web ini dipecah atau membaca oleh pelayar web, atas ke bawah, kiri ke kanan. Dan maka apabila JavaScript diaktifkan dihadapi, biasanya, ia dilaksanakan merta. Tetapi dalam kes ini, kami telah tidak mendapat belum bahagian dom itu, HTML, di mana bentuk yang unik dengan pengecam demo diisytiharkan. Dan jadi kami cuba untuk melaksanakan saya JavaScript kod sebelum nod bahawa walaupun wujud di pokok itu yang, sememangnya, adalah bermasalah kerana, maka tentulah, elemen itu sendiri akan menjadi batal pada ketika itu dalam masa. Jadi bagaimana untuk menetapkan? Baik kita mempunyai beberapa penyelesaian. Tetapi mari kita cuba yang paling mudah dengan memindahkan tag skrip saya dari kepala tag untuk badan saya, tetapi secara khusus, ke arah bahagian bawah badan halaman saya supaya bahawa itu di bawah nod dan soalan. Secara khusus, mari kita menonjolkan dan mengurangkan tag terbuka dan tag tutup untuk skrip dan menempatkan semula bahawa blok keseluruhan kod ke bahagian bawah fail di sini. Sekarang ini tidak semestinya bersih mereka bentuk, tetapi sekurang-kurangnya ia akan menguatkuasakan perintah hak operasi. Mari kita simpan fail tersebut dan menambah nilai dalam pelayar saya. Mari kita memuatkan semula halaman, memasukkannya kembali nama saya, dan di sana, Hello David kembali.