1 00:00:00,000 --> 00:00:00,380 2 00:00:00,380 --> 00:00:03,000 >> Выступоўца 1: Цяпер у апошнім прыкладзе, Нагадаем, што мы перамяжоўваюцца некаторыя 3 00:00:03,000 --> 00:00:07,170 JavaScript код ўнутры майго HTML, У прыватнасці, унутраная частка кошту 4 00:00:07,170 --> 00:00:10,460 атрыбут заклікаў Адаслаць для гэтага тэга формы. 5 00:00:10,460 --> 00:00:12,850 Зараз для невялікіх старонак, гэта не такое ўжо вялікая справа. 6 00:00:12,850 --> 00:00:15,950 Але, як вэб-старонка атрымлівае больш і больш комплекс, проста пакласці вашы 7 00:00:15,950 --> 00:00:19,660 JavaScript код тут і там унутры ад кошту атрыбутаў ня 8 00:00:19,660 --> 00:00:20,830 лепшы дызайн. 9 00:00:20,830 --> 00:00:23,440 Лепш за ўсё, калі мы фактарам, што, і прынамсі паставіць яго ўнутры 10 00:00:23,440 --> 00:00:25,200 тэг сцэнара цэнтралізавана. 11 00:00:25,200 --> 00:00:26,080 >> Як гэта зрабіць? 12 00:00:26,080 --> 00:00:30,040 Ну давайце вернемся да маёй тэга формы і спачатку выдаліць гэты атрыбут і яго 13 00:00:30,040 --> 00:00:31,780 шануеце ў цэлым. 14 00:00:31,780 --> 00:00:35,730 Тады тут, а не вызначыць Функцыя называецца Вітайце, давайце трымацца 15 00:00:35,730 --> 00:00:39,405 у радку кода, што, у канчатковым рахунку мы будзе па-ранейшаму жадаеце выканаць і замяніць 16 00:00:39,405 --> 00:00:41,560 функцыя наступным чынам Вітайце. 17 00:00:41,560 --> 00:00:48,190 Document.get Элемент Па ID цытую Unquote дэма - 18 00:00:48,190 --> 00:00:52,410 дзе дэма, нагадаем, з'яўляецца адзіным Ідэнтыфікатар для самой форме - 19 00:00:52,410 --> 00:00:56,600 кропка на ўявіць, што ўспомніць гэтае імя апрацоўшчыка падзей, у якіх 20 00:00:56,600 --> 00:00:57,710 мы зацікаўленыя. 21 00:00:57,710 --> 00:01:01,990 І давайце прызначым, што на прадставіць апрацоўшчык значэнне, якое на самай справе 22 00:01:01,990 --> 00:01:03,740 функцыянаваць сябе. 23 00:01:03,740 --> 00:01:06,390 >> Зараз звернеце ўвагу, што я на самой справе не выкліку функцыі тут. 24 00:01:06,390 --> 00:01:10,650 Я замест вызначэння ананімны, інакш вядомы як функцыю лямбда, 25 00:01:10,650 --> 00:01:14,100 , Паказаўшы паміж гэтымі фігурныя дужкі куча кода, які павінен 26 00:01:14,100 --> 00:01:15,490 на самай справе выкананы. 27 00:01:15,490 --> 00:01:18,500 У прыватнасці, код, які я хацеў бы выканаць тое, што лінія, якая ў мяне была 28 00:01:18,500 --> 00:01:23,370 раней, а затым давайце дадамо да таго, што вярнуцца ілжывым, так што гэтая форма не 29 00:01:23,370 --> 00:01:26,950 у канчатковым рахунку, прадстаўлены ў канец аддаленага вэб сервер традыцыйным спосабам. 30 00:01:26,950 --> 00:01:30,345 >> Давайце зараз захаваць гэты файл, адкрыць яго ў браўзэры, і паглядзець, што адбываецца. 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 Давайце зараз ўвесці сваё імя, Дэвід, Адправіць. 34 00:01:43,060 --> 00:01:46,900 І нічога не з'яўляецца, адбылося акрамя Адрас маёй старонцы здаецца 35 00:01:46,900 --> 00:01:52,580 змяніліся, як быццам форма была фактычна прадстаўлены той жа файл. 36 00:01:52,580 --> 00:01:53,870 >> Цяпер, чаму гэта можа быць? 37 00:01:53,870 --> 00:01:55,340 Ну мне трэба больш інфармацыі. 38 00:01:55,340 --> 00:01:58,700 Так што давайце ісці наперад і адкрыць у Chrome Прылады распрацоўкі, так што я магу на самой справе 39 00:01:58,700 --> 00:02:01,440 паглядзець на акне кансолі, каб убачыць калі я зрабіў нешта не так. 40 00:02:01,440 --> 00:02:03,330 Я магу атрымаць доступ, што праз некалькі спосабаў. 41 00:02:03,330 --> 00:02:07,250 Адным з іх з'яўляецца дапамогай гэтага меню тут, Затым у меню Сэрвіс, затым ўніз да 42 00:02:07,250 --> 00:02:08,509 Прылады распрацоўкі. 43 00:02:08,509 --> 00:02:12,890 >> І звярніце ўвагу, тут на ўкладцы Console, ёсць неперехваченное Памылка тыпу, не можа 44 00:02:12,890 --> 00:02:15,390 ўсталяваць ўласнасць на ўявіць, роўным нулю. 45 00:02:15,390 --> 00:02:16,900 Цяпер, чаму гэта можа быць? 46 00:02:16,900 --> 00:02:21,380 Ну яшчэ ў маім зыходным кодзе тут, апавяшчэнне што на адправіць, я думаю, 47 00:02:21,380 --> 00:02:25,360 ўласцівасць элемента, унікальны ідэнтыфікатар з'яўляецца дэма. 48 00:02:25,360 --> 00:02:27,810 Элемент, зноў жа, гэта проста вузел у дрэве. 49 00:02:27,810 --> 00:02:30,870 >> Атрымліваецца, што мой браўзэр не думаю, што гэты элемент 50 00:02:30,870 --> 00:02:32,500 або вузел існуе яшчэ. 51 00:02:32,500 --> 00:02:33,790 І на самай справе, гэта не так. 52 00:02:33,790 --> 00:02:37,690 Нагадаем, што вэб-старонка аналізуецца ці чытаць вэб-браўзэрам, зверху ўніз, 53 00:02:37,690 --> 00:02:38,430 злева направа. 54 00:02:38,430 --> 00:02:41,810 І таму, калі JavaScript код сутыкнуліся, як правіла, ён выконваецца 55 00:02:41,810 --> 00:02:42,700 адразу ж. 56 00:02:42,700 --> 00:02:46,460 >> Але ў дадзеным выпадку, мы нават не атрымалі яшчэ ў той частцы DOM, 57 00:02:46,460 --> 00:02:51,100 HTML, у якім, што форма з унікальным Ідэнтыфікатар дэма быў абвешчаны. 58 00:02:51,100 --> 00:02:54,320 І такім чынам мы спрабуем выканаць мой JavaScript код да гэтага вузла нават 59 00:02:54,320 --> 00:02:58,530 існуе ў дрэва, якое, вядома, з'яўляецца праблематычна, таму што тады, безумоўна, 60 00:02:58,530 --> 00:03:01,390 сам элемент будзе нулявым на той момант. 61 00:03:01,390 --> 00:03:02,390 >> Так, як выправіць? 62 00:03:02,390 --> 00:03:03,810 Ну ў нас ёсць некалькі рашэнняў. 63 00:03:03,810 --> 00:03:07,200 Але давайце паспрабуем найпростых шляхам перамяшчэння мой тэг скрыпт з галавы 64 00:03:07,200 --> 00:03:11,560 пазначыць да майго цела, але канкрэтна, да дно цела маёй старонкі так 65 00:03:11,560 --> 00:03:14,170 што гэта ніжэй вузлоў і пытанні. 66 00:03:14,170 --> 00:03:19,930 У прыватнасці, давайце вылучыць і выразаць адкрыты тэг і што зачыняе тэг для сцэнара 67 00:03:19,930 --> 00:03:24,720 і становішча, што ўвесь блок кода у ніжняй часткі файла тут. 68 00:03:24,720 --> 00:03:27,690 >> Зараз гэта не абавязкова самы чысты дызайн, але па меншай меры гэта будзе 69 00:03:27,690 --> 00:03:29,530 захаванне правільнага парадку аперацый. 70 00:03:29,530 --> 00:03:31,495 Давайце захавайце файл і перазагрузіць ў маім браўзэры. 71 00:03:31,495 --> 00:03:34,620 72 00:03:34,620 --> 00:03:40,240 Давайце перазагрузіце старонку, паўторна ўваход маё імя, і там, Прывітанне Дэвід вярнуўся. 73 00:03:40,240 --> 00:03:42,784