[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.64,0:00:03.88,Default,,0000,0000,0000,,მაქვს ვებგვერდი, "ოჰ არას" სურათით, Dialogue: 0,0:00:03.88,0:00:07.86,Default,,0000,0000,0000,,რომელიც გაგიჟებულია, რომ\Nსამყაროს დასასრული მალე დადგება -- Dialogue: 0,0:00:07.86,0:00:10.47,Default,,0000,0000,0000,,კონკრეტულად, 500 წამში. Dialogue: 0,0:00:10.47,0:00:13.36,Default,,0000,0000,0000,,მინდა ეს ვებგვერდი\Nუფრო სასარგებლო გავხადო, Dialogue: 0,0:00:13.36,0:00:16.93,Default,,0000,0000,0000,,ეს რიცხვი\Nგადავაქციო რეალურ უკუთვლად, Dialogue: 0,0:00:16.93,0:00:20.78,Default,,0000,0000,0000,,ისე რომ, ვიზიტორებმა\Nშეძლონ ნახვა, რამდენი დრო დარჩათ. Dialogue: 0,0:00:20.78,0:00:23.93,Default,,0000,0000,0000,,ახლა, როცა გავაცოცხლეთ ვებგვერდი, Dialogue: 0,0:00:23.93,0:00:26.71,Default,,0000,0000,0000,,სტრატეგია შემდეგია: უნდა ვიპოვოთ \Nრაღაც ელემენტი მასში, Dialogue: 0,0:00:26.71,0:00:29.30,Default,,0000,0000,0000,,შემდეგ რაღაც შევცვალოთ\Nამ ელემენტში Dialogue: 0,0:00:29.30,0:00:32.78,Default,,0000,0000,0000,,და ეს რამდენჯერმე გავიმეოროთ. Dialogue: 0,0:00:32.78,0:00:37.69,Default,,0000,0000,0000,,პირველ რიგში უნდა ვიპოვო მთვლელი\Nმისი ID-თი Dialogue: 0,0:00:37.69,0:00:39.49,Default,,0000,0000,0000,,ეს მარტივია. Dialogue: 0,0:00:39.49,0:00:44.42,Default,,0000,0000,0000,,[ბეჭდავს] Dialogue: 0,0:00:47.54,0:00:51.61,Default,,0000,0000,0000,,შემდეგ, უნდა დავწერო ფუნქცია, რომელიც\Nუკუსვლით დაითვლის. Dialogue: 0,0:00:51.61,0:00:54.59,Default,,0000,0000,0000,,[ბეჭდავს] Dialogue: 0,0:00:54.59,0:00:56.86,Default,,0000,0000,0000,,შემდეგ კი -- Dialogue: 0,0:00:56.86,0:01:01.22,Default,,0000,0000,0000,,მინდა რომ 'textContent' იყოს Dialogue: 0,0:01:01.22,0:01:03.76,Default,,0000,0000,0000,,წინა რიცხვს მინუს ერთის ტოლი. Dialogue: 0,0:01:03.76,0:01:06.80,Default,,0000,0000,0000,,'textContent' რეალურად იქნება ხაზი, Dialogue: 0,0:01:06.80,0:01:09.95,Default,,0000,0000,0000,,რომელიც გვინდა გადავქციოთ რიცხვად Dialogue: 0,0:01:09.95,0:01:12.85,Default,,0000,0000,0000,,ამის გაკეთება 'parcfloat()' -ით შეგვიძლია. Dialogue: 0,0:01:12.85,0:01:15.75,Default,,0000,0000,0000,,შემდეგ კი შეგვიძლია გამოვაკლოთ ამას 1. Dialogue: 0,0:01:15.75,0:01:21.54,Default,,0000,0000,0000,,დაბოლოს, ჩვენ ამ ფუნქციის გამოძახება\Nგარკვეული ინტერვალით გვინდა, Dialogue: 0,0:01:21.54,0:01:25.33,Default,,0000,0000,0000,,ანუ, წამში X-ჯერ. Dialogue: 0,0:01:25.33,0:01:30.42,Default,,0000,0000,0000,,ამის გაკეთებაში გამოგვადგება\N'window.setInterval()' Dialogue: 0,0:01:30.42,0:01:33.69,Default,,0000,0000,0000,,ეს ფუნქცია მოითხოვს ორ არგუმენტს: Dialogue: 0,0:01:33.69,0:01:38.10,Default,,0000,0000,0000,,გამოძახების ფუნქციას და მილიწამების\Nრაოდენობას, რომლის გასვლისასაც Dialogue: 0,0:01:38.10,0:01:40.88,Default,,0000,0000,0000,,ეს ფუნქცია ისევ უნდა გამოვიძახოთ. Dialogue: 0,0:01:40.88,0:01:43.37,Default,,0000,0000,0000,,გამოძახების ფუნქციის განსაზღვრა შეგვიძლია\Nისევე, Dialogue: 0,0:01:43.37,0:01:46.81,Default,,0000,0000,0000,,როგორც ის ღონისძიების დამსწრეთათვის\Nგანვსაზღვრეთ: სახელით Dialogue: 0,0:01:46.81,0:01:49.35,Default,,0000,0000,0000,,შემდეგ კი - ახლა ის ძალიან სწრაფია, Dialogue: 0,0:01:49.35,0:01:51.83,Default,,0000,0000,0000,,იმიტომ რომ\Nწამების არგუმენტი არ განგვისაზღვრავს-- Dialogue: 0,0:01:51.83,0:01:55.25,Default,,0000,0000,0000,,გვინდა, რომ ეს მილიწამების გარკვეული\Nრაოდენობის გასვლისას მეორდებოდეს; Dialogue: 0,0:01:55.25,0:01:58.52,Default,,0000,0000,0000,,კერძოდ, ერთხელ წამში რომ მეორდებოდეს.\Nანუ, ყოველ ათას მილიწამში Dialogue: 0,0:01:58.52,0:02:01.56,Default,,0000,0000,0000,,იმიტომ რომ წამში ათასი მილიწამია. Dialogue: 0,0:02:01.56,0:02:05.22,Default,,0000,0000,0000,,მშვენირია, ახლა ყოველ წამში\Nთითო რიცხვით გადადის უკან. Dialogue: 0,0:02:05.22,0:02:10.24,Default,,0000,0000,0000,,490 წამი დაგრჩა, რომ მაქსიმალურად ბევრი\Nრამ ისწავლო! Dialogue: 0,0:02:10.24,0:02:15.04,Default,,0000,0000,0000,,კიდევ ერთი ფუნქცია, რომელსაც ხანდახან\N'setInterval'-ის მაგივრად ვიყენებთ Dialogue: 0,0:02:15.04,0:02:17.23,Default,,0000,0000,0000,,არის 'setTimeout' Dialogue: 0,0:02:17.23,0:02:21.78,Default,,0000,0000,0000,,ახლა შევცვლი და დააკვირდით, \Nთუ შეამჩნევთ სხვაობას Dialogue: 0,0:02:21.78,0:02:23.68,Default,,0000,0000,0000,,ერთი წამიც მოიცადეთ.. Dialogue: 0,0:02:23.68,0:02:28.30,Default,,0000,0000,0000,,აი, ახლა, ალბათ, ხედავთ, რომ როცა \Nვიყენებთ 'setTimeout' ფუნქციას Dialogue: 0,0:02:28.30,0:02:33.88,Default,,0000,0000,0000,,ბრაუზერი ფუნქციას იძახებს ერთხელ,\Nგამეორების გარეშე. Dialogue: 0,0:02:33.88,0:02:38.70,Default,,0000,0000,0000,,ასე რომ, ამ შემთხვევაში ეგ არ გამოგვადგება. Dialogue: 0,0:02:38.70,0:02:42.21,Default,,0000,0000,0000,,მაგრამ სხვა შემთხვევებში შეიძლება ძალიან\Nსასარგბელო ფუნქცია აღმოჩნდეს: Dialogue: 0,0:02:42.21,0:02:45.87,Default,,0000,0000,0000,,მაგალითად, თუ ჩვენს მომხმარებლებს\Nგამაფრთხილებელ ბანერს ვუჩვენებთ Dialogue: 0,0:02:45.87,0:02:48.09,Default,,0000,0000,0000,,და გვინდა, რომ იგი 10 წამში გაქრეს. Dialogue: 0,0:02:48.09,0:02:52.89,Default,,0000,0000,0000,,ახლა ეს ისევ 'setInterval'-ად\Nშევცვალოთ. Dialogue: 0,0:02:52.89,0:02:56.51,Default,,0000,0000,0000,,ახლა, როცა მსგავს ანიმაციებს ვტესტავთ Dialogue: 0,0:02:56.51,0:02:59.99,Default,,0000,0000,0000,,უნდა ვნახოთ, როგორ გამოიყურება ის თავიდან \Nბოლომდე; Dialogue: 0,0:02:59.99,0:03:02.46,Default,,0000,0000,0000,,მაგალითად, უნდა ვნახოთ, რა ხდება\Nროცა მივიღებთ 0-ს. Dialogue: 0,0:03:02.46,0:03:05.26,Default,,0000,0000,0000,,ძალიან დიდი ხანი მოგივწევს ცდა Dialogue: 0,0:03:05.26,0:03:07.21,Default,,0000,0000,0000,,რაც მოსაწყენია; Dialogue: 0,0:03:07.21,0:03:10.58,Default,,0000,0000,0000,,ამიტომ საწყის წერტილად ავიღოთ 5 Dialogue: 0,0:03:10.58,0:03:12.54,Default,,0000,0000,0000,,და ვნახოთ, რა მოხდება. Dialogue: 0,0:03:12.54,0:03:16.73,Default,,0000,0000,0000,,ოთხი, სამი, ორი, ერთი, ნული... Dialogue: 0,0:03:16.73,0:03:19.29,Default,,0000,0000,0000,,მინუს ერთი, მინუს ორი. Dialogue: 0,0:03:19.29,0:03:21.88,Default,,0000,0000,0000,,ეს ცოტა უცნაურია. Dialogue: 0,0:03:21.88,0:03:26.29,Default,,0000,0000,0000,,როცა სამყარო დასრულდება, უბრალოდ უნდა\Nავფეთქდეთ და შევწყვიტოთ თვლა. Dialogue: 0,0:03:26.29,0:03:30.11,Default,,0000,0000,0000,,გამოდის, რომ ჩვენ გვინდა Dialogue: 0,0:03:30.11,0:03:32.73,Default,,0000,0000,0000,,შევაჩეროთ უკუთვლა, როცა ის ნულამდე მივა. Dialogue: 0,0:03:32.73,0:03:36.32,Default,,0000,0000,0000,,ამის გაკეთება 'if' პირობით შეგვიძლია,\Nფუნქციის შიგნითვე. Dialogue: 0,0:03:36.32,0:03:42.23,Default,,0000,0000,0000,,პირველ რიგში, მიმდინარე დრო ცვლადად\Nუნდა შევინახო, იმიტომ რომ Dialogue: 0,0:03:42.23,0:03:44.52,Default,,0000,0000,0000,,მას არაერთხელ გამოვიყენებთ. Dialogue: 0,0:03:44.52,0:03:47.51,Default,,0000,0000,0000,,ავიღოთ ეს, ჩავსავთ აქ; Dialogue: 0,0:03:47.51,0:03:51.27,Default,,0000,0000,0000,,და ჩავანაცვლოთ ეს ცვლადით 'currentTime' Dialogue: 0,0:03:51.27,0:03:55.56,Default,,0000,0000,0000,,ახლა უნდა შევქმნა 'if' პირობა, Dialogue: 0,0:03:55.56,0:04:01.10,Default,,0000,0000,0000,,რომლის გამოც ტექსტი შეიცვლება მხოლოდ მაშინ\Nროცა 'currentTime' 0-ზე მეტია. Dialogue: 0,0:04:01.10,0:04:04.94,Default,,0000,0000,0000,,ერთის გამოკლება მხოლოდ ამ შემთხვევაში გვინდა. Dialogue: 0,0:04:04.94,0:04:10.50,Default,,0000,0000,0000,,ეს აქ უნდა გადავიტანო, შიგნით. Dialogue: 0,0:04:10.50,0:04:15.01,Default,,0000,0000,0000,,ეს მუშაობს.. თუმცა ამ მიდგომას ერთი დიდი\Nნაკლი აქვს. Dialogue: 0,0:04:15.01,0:04:19.44,Default,,0000,0000,0000,,ბრაუზერი გააგრძელებს ფუნქციის გამოძახებს \Nყოველ ერთ წამში, Dialogue: 0,0:04:19.44,0:04:21.56,Default,,0000,0000,0000,,სანამ ვებ-გვერდი ღიაა. Dialogue: 0,0:04:21.56,0:04:24.84,Default,,0000,0000,0000,,ბრაუზერებს კი უამრავი სხვა საქმე აქვთ \Nგასაკეთებელი Dialogue: 0,0:04:24.84,0:04:27.58,Default,,0000,0000,0000,,და ტყუილ-უბრალოდ არ უნდა გამოვაძახებინოთ\Nფუნქცია. Dialogue: 0,0:04:27.58,0:04:30.94,Default,,0000,0000,0000,,ამიტომ, სინამდვილეში გვინდა, რომ\N Dialogue: 0,0:04:30.94,0:04:35.58,Default,,0000,0000,0000,,ბრაუზერმა შეწყვიტოს ფუნქციის გამოძახება,\Nროცა იგი ნულს გაუტოლდება. Dialogue: 0,0:04:35.58,0:04:40.38,Default,,0000,0000,0000,,ამას ახალი მეთოდის გამოყენებით ვიზამთ,\Nრომელსაც ჰქვია 'window.clearInterval()'.\ Dialogue: 0,0:04:40.38,0:04:47.35,Default,,0000,0000,0000,,ჩავსვათ ეს 'window.clearInterval()' აქ - \N'else' -ის ველში. Dialogue: 0,0:04:47.35,0:04:52.19,Default,,0000,0000,0000,,ახლა ფუნქციას უნდა მივაწოდოთ არგუმენტი,\Nრომ გაიგოს, რომელი ინტერვალი უნდა შეწყვიტოს. Dialogue: 0,0:04:52.19,0:04:55.80,Default,,0000,0000,0000,,გვერდზე ხომ ბევრი სხვადასხვა ინტერვალი \Nშეიძლება, გვქონდეს. Dialogue: 0,0:04:55.80,0:04:58.90,Default,,0000,0000,0000,,იმისთვის, რომ გავიგოთ, რომელი\Nინტერვალია შესაწყვეტი, Dialogue: 0,0:04:58.90,0:05:02.98,Default,,0000,0000,0000,,'setInterval'-ის შედეგი უნდა შევინახოთ ცვლადად. Dialogue: 0,0:05:02.98,0:05:07.82,Default,,0000,0000,0000,,ახლა მაქვს მთვლელის ცვლადი, \Nრომელიც შემიძლია აქ ჩავსვა Dialogue: 0,0:05:07.82,0:05:11.12,Default,,0000,0000,0000,,და გავაგებინო ფუნქციას, რა უნდა შეწყდეს\Nროცა მთვლელი მივა 0-მდე: Dialogue: 0,0:05:11.12,0:05:15.57,Default,,0000,0000,0000,,უნდა დასრულდეს განახლება \Nდა ამ ფუნქციის გამოძახება. Dialogue: 0,0:05:15.57,0:05:19.33,Default,,0000,0000,0000,,ყოველი ანიმაციისთვის ზედმიწევნით ზუსტად\Nუნდა განსაზღვროთ, Dialogue: 0,0:05:19.33,0:05:21.70,Default,,0000,0000,0000,,რა პირობით უნდა ჩერდებოდეს იგი. Dialogue: 0,0:05:21.70,0:05:26.13,Default,,0000,0000,0000,,და კი, შეიძლება ისეთი ანიმაცია შექმნათ,\Nრომელიც უსასრულოდ უნდა გრძელდებოდეს, Dialogue: 0,0:05:26.13,0:05:29.02,Default,,0000,0000,0000,,მაგრამ ეს რამე გასაკუთრებით კარგი უნდა იყოს Dialogue: 0,0:05:29.02,0:05:33.60,Default,,0000,0000,0000,,იმიტომ რომ თქვენი ბრაუზერი რეალურად\Nიტვირთება, როცა იძახებს რაღაც ფუნქციას. Dialogue: 0,0:05:33.60,0:05:37.60,Default,,0000,0000,0000,,ახლა კი დროა ავაფეთქოთ ეს სამყარო!