SPEAKER 1: Nun en tiu lasta ekzemplo, memori, ke ni intermiksitaj iuj Javascript-kodon ene de mia HTML, specife, ene de la valoro de la atributo nomita On Submetu por ke formo etikedo. Nun por malgrandaj paĝoj, tiu ne estas tiom granda interkonsento. Sed kiel retpaĝo gets pli longaj kaj pli kompleksa, simple metante vian Javascript kodo tie kaj tie interne de la valoro de atributoj ne estas la bona dezajno. Pli bona se ni faktoro kiu eksteren kaj almenaŭ metis gxin interne de la skripto tag centre. Kiel fari tion? Bone ni revenos al mia formo etikedon kaj unue forigi ĉi atributo kaj ĝia taksas entute. Tiam ĝis tie, anstataŭ difini funkcio nomita Salutu, ni pendigu sur al la linio de kodo ke finfine ni Mi ankoraŭ volas ekzekuti kaj anstataŭigi la Salutu funkcio kiel sekvas. Document.get Elemento Per ID quote unquote demo - kie demo, recall, estas la sola ensalutilo por la formo mem - dot sur submit, kion memoras estas la nomo de la eventa traktilo en kiu ni estas interesita. Kaj ni atribui kiuj sur submit traktilo la valoro kiu estas reale funkcii mem. Nun rimarki ke mi ne vere nomante funkcio ĉi tie. Mi anstataŭ difini anonima, alie sciata kiel lambda funkcion, specifigante inter tiuj buklaj krampoj faskon da kodo kiu devus efektive estos ekzekutita. Specife, la kodo, kiun mi ŝatus ekzekuti estas tiu linio, kiun mi havis antaŭe, kaj tiam ni aldonus al tio redoni malvera por ke tiu formo ne estas fine prezentis fini fora retejo servilo en la tradicia maniero. Ni nun savas tiun dosieron, malfermi ĝin en krozilo, kaj vidu kio okazas. http://localhost/dom-1.html. Ni nun tajpas en mia nomo, David Submetu. Kaj nenio ŝajnas esti okazinta krom la URL de mia paĝo ŝajnas ŝanĝiĝis kvazaŭ la formo estis vere submetiĝis al la sama dosiero. Nun kial povus esti? Nu mi bezonas iom pli da informoj. Do ni iru antaŭen kaj malfermu Chrome la Developer Iloj tiel ke mi povos reale rigardi la konzolo fenestro por vidi se mi faris ion malbonan. Mi povas aliri ke per kelkaj manieroj. Unu el kiuj estas per tiu menuo ĉi tie, tiam sub Iloj, poste malsupren al Developer Iloj. Kaj rimarkos ĉi tie en la Konzolon langeto, tie estas uncaught tipo de eraro, neniom starigis proprieto sur submit de nula. Nun kial povus esti? Nu reen en mia fontkodon tie, avizo ke sur PROPONU mi pensas estas posedaĵo de la elemento kies unika ensalutilo estas pruvo. Ero, denove, estas nur vertico en arbo. Do ĝi aperas ke mia retumilo ne opinias, ke tiu elemento aŭ vertico ekzistas ankoraŭ. Kaj efektive, ne. Memoru ke retpaĝo estas analizebla aŭ legu per foliumilo, supro al malsupro, maldekstre dekstren. Kaj do kiam JavaScript kodo estas renkontita, tipe, ĝi estos ekzekutita tuj. Sed en tiu kazo, ni eĉ ne atingis ankoraŭ la parto de la dom, la HTML, en kiu tiu formo kun unika ensalutilo demo estas deklarita. Kaj tial ni provas plenumi miajn Javascript kodo antaŭ tiu nodo eĉ Ekzistas en la arbo, kiu, kompreneble, estas problema ĉar tiam, verŝajne, La elemento mem estos nula en tiu punkto en la tempo. Do kiel ripari? Nu ni havas kelkajn solvojn. Sed ni provu la plej simpla kopiante mia skripto etikedo el la kapo marki mian korpon, sed specife, rilate la fundo de mia paĝo korpo tiel ke ĝi estas sub la nodoj kaj demandojn. Specife, ni reliefigas kaj tranĉi la malferma tag kaj proksima etikedon por skripton kaj transloki ke tutaj bloko de kodo al la fundo de la dosiero tien. Nun tio ne estas nepre la plej pura desegni, sed almenaŭ ĝi volas efikigi la dekstra ordo de operacioj. Ni savu la dosieron kaj freŝigi en mia retumilo. Ni reŝarĝi la paĝon, re-enigo mia nomo, kaj tie, Saluton David estas dorso.