>> დინამიკები 1: ახლა რომ გასულ მაგალითად, გავიხსენოთ, რომ ჩვენ interspersed რამდენიმე
JavaScript კოდი შიგნით ჩემი HTML, კერძოდ, შიგნით ღირებულება
ატრიბუტი მოუწოდა შეტანა რომ ფორმა აქვს.
ახლა პატარა გვერდებზე, ამ არ არის ისეთი დიდი გარიგება.
მაგრამ, როგორც ვებ გვერდზე იღებს უფრო და უფრო რთული, უბრალოდ აყენებს თქვენი
JavaScript კოდი აქ და იქ შიგნით ღირებულების ატრიბუტები არ არის
საუკეთესო დიზაინი.
საუკეთესო თუ ჩვენ ფაქტორი, რომ გარეთ და მინიმუმ დააყენოს ის შიგნით
სცენარი tag ცენტრალიზებული.
>> როგორ გავაკეთოთ ეს?
ისე დავუბრუნდეთ ჩემი ფორმა აქვს და პირველი წაშლა ამ ატრიბუტის და მისი
ვაფასებთ საერთოდ.
მაშინ აქ, ვიდრე განსაზღვრავს ფუნქცია მოუწოდა გაცილება, მოდით გათიშეთ
ხაზი კოდი, რომ საბოლოო ჯამში ჩვენ მაინც მინდა, რომ შეასრულოს და შეცვალოს
გაცილება ფუნქცია შემდეგნაირად.
Document.get Element By ID ციტირებით unquote დემო -
სადაც დემო, გაწვევას, არის უნიკალური იდენტიფიკატორი სახით თავად -
dot on წარუდგინოს, რომელიც გაწვევას არის სახელი ღონისძიების კურატორმა, რომელშიც
ჩვენ დაინტერესებული.
და მოდით მივანიჭოთ, რომ წარმოადგინოს კურატორმა ღირებულება, რომელიც რეალურად
ფუნქცია თავად.
>> ახლა შეამჩნია, რომ მე რეალურად არ მოუწოდებენ ფუნქცია აქ.
მე ნაცვლად განსაზღვრავს ანონიმური, სხვაგვარად ცნობილია როგორც ლამბდა ფუნქცია,
განსაზღვრით შორის curly აფრთხილებს bunch of კოდი, რომელიც უნდა
რეალურად იყოს შესრულებული.
კერძოდ, კოდი, რომელიც მინდა შეასრულოს ის არის, რომ ხაზი, რომ მე მქონდა
ადრე, და მაშინ მოდით დავამატოთ, რომ დაბრუნების ცრუ ისე, რომ ეს ფორმა არ არის
საბოლოო ჯამში, წარმოდგენილი უნდა დამთავრდეს დისტანციური ვებგვერდი სერვერზე ტრადიციული გზა.
>> მოდით ახლა გადარჩენა ამ ფაილის გასახსნელად up ბრაუზერში, და ვნახოთ, რა მოხდება.
http://localhost/dom-1.html.
მოდით ახლა აკრიფოთ ჩემი სახელით, დავით, წარადგინეთ.
და არაფერი ჩანს, რომ არ მოხდა გარდა URL ჩემი გვერდი, როგორც ჩანს,
შეიცვალა, თითქოს ფორმა იყო რეალურად წარმოდგენილი იგივე ფაილი.
>> ახლა რატომ შეიძლება რომ იყოს?
ასევე მჭირდება კიდევ რამდენიმე ინფორმაციას.
მოდით წავიდეთ წინ და ქმნის Chrome-ს შემქმნელი ინსტრუმენტები ისე, რომ მე შეიძლება რეალურად
შევხედოთ კონსოლის ფანჯარა თუ მე ვაკეთებ რაღაც.
მე შეგიძლიათ თქვათ, რომ via რამდენიმე გზა.
რომელთაგან ერთი მეშვეობით მენიუში აქ, მაშინ ფარგლებში ინსტრუმენტები, მაშინ ქვემოთ
Developer Tools.
>> და შენიშნავს, აქ Console tab, არსებობს uncaught ტიპის შეცდომა, ვერ
მითითებული ქონების წარუდგინოს of null.
ახლა რატომ შეიძლება რომ იყოს?
ისევე უკან ჩემი კოდის აქ, ცნობა რომ წარმოადგინონ ვფიქრობ არის
ქონების ელემენტს, რომლის უნიკალური იდენტიფიკატორი არის დემო.
ელემენტს, კიდევ ერთხელ, მხოლოდ კვანძის in ხე.
>> გამოდის, რომ ჩემს ბრაუზერში არ ვფიქრობ, რომ ელემენტს
ან კვანძის არსებობს ამჟამად.
და მართლაც, ეს არ.
შეგახსენებთ, რომ ვებ გვერდი გაანალიზება ან წაკითხული მიერ ბრაუზერში, ყველაზე ქვედა,
მარცხნიდან მარჯვნივ.
და ამრიგად, როდესაც JavaScript კოდია გვხვდება, როგორც წესი, ის სიკვდილით დასაჯეს
დაუყოვნებლივ.
>> მაგრამ ამ შემთხვევაში, ჩვენ კი არ მიღებული ჯერ ნაწილი dom,
HTML, რომელიც ამ ფორმით უნიკალური იდენტიფიკატორი დემო გამოცხადდა.
და ამიტომ ჩვენ ვცდილობთ, რათა შესრულდეს ჩემი JavaScript კოდი მანამდე კვანძის კი
არსებობს ხე, რომელიც, რა თქმა უნდა, პრობლემატურია, რადგან მაშინ, რა თქმა უნდა,
ელემენტის თავად იქნება null იმ მომენტში.
>> ასე რომ, თუ როგორ უნდა დააფიქსიროს?
ასევე ჩვენ გვაქვს რამდენიმე გადაწყვეტილებები.
მაგრამ მოდით ცდილობენ მარტივი by გადაადგილდებიან ჩემი script tag ხელმძღვანელი
tag ჩემი სხეული, მაგრამ კონკრეტულად, მიმართ ბოლოში ჩემი გვერდი სხეული ისე
რომ ეს არის ქვემოთ კვანძების და შეკითხვები.
კერძოდ, მოდით ხაზი გავუსვა და დაჭრილი ღია tag და ჭდის script
და გადატანა, რომ მთელი ბლოკი კოდი ბოლოში ფაილი აქ.
>> ახლა ეს არ არის აუცილებლად სუფთა დიზაინი, მაგრამ მაინც ეს
აღასრულოს უფლება ბრძანებით ოპერაციებში.
გადავარჩინოთ ფაილი და განაახლეთ ჩემს ბრაუზერში.
მოდით განაახლეთ გვერდი, ხელახლა შეყვანა ჩემი სახელით, და იქ, Hello David დაბრუნდა.