[Powered by Google Translate] [סעמינאַר: דזשקווערי] [וויפּול שעכאַוואַט, האַרוואַרד אוניווערסיטעט] [דאס איז קס50.] [CS50.TV] אויב איר ניטאָ ווייַטערדיק צוזאמען אין שטוב, איר קענען פאקטיש צוטריט מיין סליידז אָנליין דורך געגאנגען צו דעם לינק. עס ס טדזשדזשרוודזש, אויף ביט.לי. איר קענען אויך נאָר גיין צו די URL גלייַך, וואָס איז cloud.cs50.net / ~ וושעכאַוואַט, וואָס איז מיין נאָמען, און דזשקווערי. איך העכסט מוטיקן איר צו נאָכגיין צוזאמען אויב איר ניטאָ וואַטשינג אין שטוב, און אויב איר ניטאָ דאָ, אויך, ווייַל דאָס איז אַ שיין ינטעראַקטיוו פּרעזענטירונג. אזוי הייַנט איך בין געגאנגען צו זייַן גערעדט וועגן דזשקווערי, און דער ערשטער קשיא איז, וואָס איז דזשקווערי? דאס יאָר, איך וויסן איר גויס האָבן נישט באדעקט דזשאַוואַסקריפּט אין ווי פיל דעטאַל ווי מיר האָבן אין פאַרגאַנגענהייַט יאָרן. דזשאַוואַסקריפּט איז, ערשטער פון אַלע, נאָר אַ קליענט-זייַט שפּראַך אַז איר נוצן צו לויפן סקריפּס און קאָד אויף יעדער באַניצער ס מאַשין. אזוי איר האָבן אַ סערווער וואָס גיט וועב זייַטלעך צו מענטשן, אָבער איר זאל וועלן צו טאָן שטאָפּן אויף זייער מאַשין, פרעגן זייער מאַשין צו שיקן ריקוועס צו דיין סערווירער יעדער 30 סעקונדעס אָדער עפּעס ווי אַז. איר קענען טאָן וואָס ניצן דזשאַוואַסקריפּט. דזשקווערי נאָר גיט מער פאַנגקשאַנאַליטי אויף שפּיץ פון דזשאַוואַסקריפּט וואָס טוט עקסטרע שטאָפּן פֿאַר איר. אויב איר קוק בייַ די אינהאַלט אויף שפּיץ, וואָס באשרייבט עטלעכע פון ​​די שטאָפּן אַז איר ניטאָ קענען צו טאָן. אזוי קוילעלדיק, עס איז באשאפן אין יאנואר 2006. עס איז געווען ערשטער קאַנסיווד פון אין אויגוסט 2005. עס ס שוין אַרום פֿאַר אַ פּאָר יאר, און עס ס 'טאַקע טייל פון דער נייַ וועב 2.0 באַוועגונג אַז ס 'געמאכט די אינטערנעט אַזוי בלאַנק. עס ס די מערסט וויידלי געניצט דזשאַוואַסקריפּט ביבליאָטעק. איבער 19,600,000 וועבסיטעס זענען ניצן עס, און די באַניץ איז נאָך ינקריסינג לויט צו builtwith.com, וואָס, משמעות, איבער די לעצטע יאָר, האט נאָר געווען כּסדר ינקריסינג פערלי ליניערלי. צווישן די שפּיץ 10,000,000 זייטלעך, עס ס 'נאָך - אַרום 40% פון זיי זענען דערווייַל ניצן עס. פאַסעבאָאָק ניצט עס, גורל פון אנדערע וועבסיטעס דערווייַל נוצן עס. איר קענען קוקן אין יענע סטאַטיסטיק אויף דיין אייגן, אויב איר 'ד ווי. און איר קען זאָגן עס ס לעגיט ווייַל עס האט אַ יסוד און 13 ברעט מיטגלידער, צוזאמען מיט אַ קאָלעקטיוו פון 20 מענטשן וואס אַרבעטן אויף עס אויף אַ רעגולער יקער. אזוי עס ס 'זייער וויידלי געניצט, עס האט אַ. אָרג URL, עס ס פאַנטאַזיע, עס האט ומדריי-אָפס פֿאַר אנדערע שטאָפּן, אַזוי עס ס אַ גרויס האַנדלען. פארוואס זאָל איר נוצן עס? דזשקווערי איז זייער לייטווייט. אַז מיטל עס ס 'נישט אַ ריזיק טעקע. איר קענען אראפקאפיע די מיניפיעד טעקע, וואָס איז אָן אַלע די ווייַס פּלאַץ און באַמערקונגען, און עס ס נאָר 32 קב. אזוי עס ס 'גרינג צו נאָר וואָרף אַנטו אייער וועב בלאַט און נאָר צו אָנהייבן ניצן עס. עס ס אויך זייער יפישאַנטלי געשריבן, אַזוי עס טוט נישט נעמען זיך אַ פּלאַץ פון - עס טוט נישט פּאַמעלעך אַראָפּ דיין וועבזייַטל פיל ווען איר נוצן עס. עס לעץ איר ינסטרומענט זאכן וואָס זענען ביז אַהער אַנפיזאַבאַל. עס זענען עטלעכע אַספּעקץ פון פאַנגקשאַנאַליטי, ווי שאפן אַנאַמיישאַנז, אַז נאָרמאַלי וואָלט זייַן זייער, זייער שווער צו טאָן. אבער אין דזשקווערי זיי ניטאָ פאקטיש זייער פּשוט. און עס זענען עטלעכע זאכן וואָס זענען אַנויינג צו טאָן, מעגלעך אין דזשאַוואַסקריפּט, ווי שיקן אַ פּאָסטן בעטן, אָבער צו שיקן אַ בקשה צו אַ שליח, איר האָבן צו שרייַבן פינף אָדער זעקס אָדער זיבן שורות פון קאָד. איצט איר קענען נאָר טאָן עס אין אַ איין שורה פון קאָד, אין אַ איין פֿונקציע רופן. אַז טאַקע סימפּלאַפייז אַ פּלאַץ פון די שטאָפּן אַז איר ניטאָ טאן. און אַלע די קיל קידס זענען ניצן עס. דורך וואָס, איך מיינען מיר. אין מיין לעצט פּרויעקט לעצטע יאָר, וואָס איז news.whrb.org, וואָס איז פֿאַר די ראַדיאָ סטאַנציע, איך באשאפן דעם בלאָג וואָס מחנות אַלע די ווייזט אַז מיר ווע געטאן און די mp3 טעקעס פֿאַר זיי. איר קענען בלעטער דורך די פאַרגאַנגענהייַט ווייזט, און עס ס אַלע געטאן ניצן דזשקווערי. איר קענען זאָגן ווייַל פון אַלע די אַנאַמיישאַנז, יסענשאַלי. אזוי אויב איר האָט - אויב איר ניטאָ שאפן אַ נייַ פּאָסטן, איר זען די ביסל סלידעדאָוונס; אַז ס אַלע געטאן ניצן דזשקווערי. און דעם וועלקן - אַזוי אַז מין פון שטאָפּן איז אַלע געטאן ניצן דזשקווערי, און איר טאָן ניט האָבן צו קעסיידער רילאָוד דעם בלאַט צו נאַוויגירן די פּלאַץ. אן אנדער קיל זאַך אַז ס 'געמאכט ניצן דזשקווערי איז דאָס פּרעזענטירונג. איך בין ניצן דעם עפענען מקור זאַך גערופן סקראָללדעקק, וואָס עמעצער געשריבן אויף שפּיץ פון דזשקווערי. אויב איר פאקטיש קוקן בייַ די מקור, איר קענען זען אַז זיי ניטאָ ניצן דעם דאָלאַר צייכן; דאָלאַר וואונדער זענען געניצט אין דזשקווערי צו באַטייַטן אַז אַ פֿונקציע איז אַ דזשקווערי פונקציאָנירן. אזוי זיי ניטאָ דיפיינינג אַ ראַפּער אויף שפּיץ פון דזשקווערי אַז אַלאַוז איר צו מאַכן אַ פּרעזענטירונג ווי דעם, און איר קענען זען וואָס דאָ זיי ניטאָ אַרייַנגערעכנט דער אָריגינעל דזשקווערי טעקע, וואָס איז וואָס איר וועט האָבן צו אַרייַננעמען אויב ווילן צו נוצן דזשקווערי אין דיין אייגן וועבסיטעס. רירנדיק אויף וואָס, ווי טאָן איר ינסטאַלירן עס? איר קענען נאָר גיין צו jQuery.com און אָפּלאָדירן די טעקע, לייג עס צו אַ וועב וועגווייַזער און אַרייַננעמען עס. אזוי נאָר אויף שפּיץ, אין די קאָפּ פאַרבינדן פון דיין HTML טעקע פון דיין הויפּט HTML טעקע, נאָר האָבן אַז שורה פון קאָד מיט דעם ריכטיק ווערסיע פֿאַר וואָס ווערסיע פון ​​דזשקווערי איר ניטאָ ניצן. איר קענען אראפקאפיע עס דורך געגאנגען צו jQuery.com, גיט "אראפקאפיע דזשקווערי," און איר ווע גאַט עס. אַז ס עס. און פאקטיש, מיר קענען נעמען אַ קוק אין וואָס עס קוקט ווי. אויב איר גיט אויף אראפקאפיע דאָ, דזשקווערי איז דאָס. עס ס נאָר איין גרויס דזשאַוואַסקריפּט טעקע וואָס טוט אַלע די מאַגיש שטאָפּן פֿאַר איר. דאס איז די מיניפיעד ווערסיע, וואָס איז נישט ליינעוודיק בייַ אַלע. איר קענען אויך קוקן בייַ די אַנטוויקלונג ווערסיע, וואָס איז ליינעוודיק אָבער נאָך זייער, זייער לאַנג. עס ס אַ פּלאַץ פון שטאָפּן אין דאָרט. איר קענען אויך לינק צו גוגל 'ס כאָוסטיד ווערסיע פון ​​עס. אזוי אַז וועט לאָזן איר צו נאָר פאַרלאָזנ אויף גוגל צו צושטעלן עס. זיי צושטעלן יעדער ווערסיע פון ​​עס, בנימצא אין אַלע מאל. אזוי איר קענען מיסטאָמע פאַרלאָזנ אויף גוגל צו באַלעבאָס עס פֿאַר איר. אָדער איר קענען לינק צו דזשקווערי ס אייגן לעצט ווערסיע. זיי האָבן אַ URL וואָס ס שטענדיק דערהייַנטיקט צו די לעצט ווערסיע. עס ס דזשקווערי-לעצט, און דאָרט ס 'איין פּראָבלעם מיט וואָס, וואָס איז אַז אויב די דערהייַנטיקט דזשקווערי און עטלעכע פון ​​די פֿריִערדיקע פאַנגקשאַנאַליטי זיי האט ווערט רעטראָגראַדעד אָדער דעפּראַקייטאַד, עס זאל ניט - עס זאל אָנהייבן צו נישט באַקומען געשטיצט ענימאָר. אזוי אויב איר שרייַבן אַ וועבזייַטל ניצן ווערסיע 1.8.2, דורך די צייַט ווערסיע 2.7 קומט אויס עטלעכע פון ​​די פאַנגקשאַנז איר געשריבן טאָן ניט אַרבעט ענימאָר. אזוי עס ס 'בעסער צו נאָר אראפקאפיע די 32 קב טעקע, לייגן עס אויף דיין וועב בלאַט, און עס וועט אַרבעטן אויף אייביק. איך בין געגאנגען צו גיין פאָרויס און אָנהייבן גערעדט וועגן די פאַקטיש פאַנגקשאַנאַליטי פון דזשקווערי. דער ערשטער זאַך איז סעלעקטאָרס. דאס איז וואָס דזשקווערי איז טכילעס קאַנסיווד צו צושטעלן. און איר קענען גיט אויף דאַקיומענטיישאַן צו קוקן בייַ די דיטיילד דאַקיומענטיישאַן פֿאַר די סעלעקטאָרס איך בין געגאנגען צו זייַן קאַווערינג. דער געדאַנק הינטער סעלעקטאָרס איז אַז איר קענען אויסקלייַבן HTML יסודות אויף אַ בלאַט. יסודות אויף אַ בלאַט האָבן ידס און קלאסן און אנדערע יידענטאַפייינג אַספּעקץ צו זיי. עס ס אויך - דער אין פאַרשידענע אָרדערס. עטלעכע פון ​​די צייַט זיי ניטאָ נעסטעד ין יעדער אנדערע. דזשקווערי אַלאַוז איר צו בויען פּשוט קוויריז אַז צוריקקריגן עלעמענטן פון דער בלאַט. דעמאָלט איר קענען מאַניפּולירן די יסודות ניצן דזשקווערי פאַנגקשאַנז, וואָס איז די מאַניפּיאַליישאַן אָפּטיילונג מיר וועט באַקומען צו שפּעטער. איר קענען טוישן די HTML, טוישן די קסס, איר קענען אויך ופלעבן און לייגן פאַנגקשאַנז אַז אַקטאַווייט אויף זיכער געשעענישן. אזוי, למשל, אויב עפּעס 'ס קליקט, איר ווילן עפּעס צו פּאַסירן, איר קענען טאָן וואָס ניצן דזשקווערי ווי געזונט. און עס זענען אַ ריזיק נומער פון וועגן צו אויסקלייַבן עלעמענטן. רובֿ פון זיי איך ווע קיינמאָל געניצט, אָבער עס זענען די גרונט אָנעס, וואָס זענען שיין וויכטיק. די עלעמענט סעלעקטאָר, למשל, אויב איר ניטאָ נאָר סאַלעקטינג עפּעס וואָס איז אַ div - איך פאקטיש האָבן די קאָד עפענען פֿאַר דעם רוק פּרעזענטירונג. אזוי, למשל, דאָ ס דער ערשטער רוק. דאָ מיר האָבן אַ div. אויב מיר פאקטיש אויסקלייַבן אַלע די דיווס אויף דעם בלאַט, עס וועט נאָר געבן אונדז אַ מענגע פון ​​אַלע די דיווס אַז עקסיסטירן אין דעם טעקע. די שייַן סעלעקטאָר לעץ איר אויסקלייַבן עפּעס מיט אַ געגעבן שייַן. אזוי אויב דאָס, למשל, דעם זאַך האט די שייַן "וואָס," און אויב מיר האט דאָס מיט # וואָס אַנשטאָט פון עטלעכע שייַן, עס וואָלט נאָר צוריקקומען אַ מענגע וואָס האט אַ איין עלעמענט און וואָס איז אַז עלעמענט פון דער בלאַט. מיר קענען אויך פאַרבינדן סעלעקטאָרס דעם וועג דורך ווייל בלויז אויסקלייַבן דאס מיט ידס אַז ביסט דיווס. אזוי יאָ. בלויז אויסקלייַבן דיווס וואָס האָבן אַז שייַן. פֿאַר סאָרט איר נאָר נוצן אַ פּונקט, עס ס די זעלבע זאַך ווי קסס. אָפּשטאַמלינג אויך מעשים; אַזוי אויב איר האָבן עטלעכע קלאַס און עס האט נעסטעד יסודות ין עס - אַזוי, למשל, עס איז עטלעכע קלאַס און עס האט אַ אַנקער פאַרבינדן צו לינק צו אן אנדער בלאַט, איר קענען נוצן דעם סינטאַקס צו צוריקקריגן דעם לינק. איר קענען אויך אויסקלייַבן קייפל זאכן בייַ אַמאָל; נאָר באַזונדער זיי דורך קאָמעס, נוצן קיין סעלעקטאָר איר 'ד ווי, און איר וועט אויסקלייַבן אַלע פון ​​זיי אין אַמאָל, אין אַ איין מענגע. און דעמאָלט דאָרט ס אויך די ניט סעלעקטאָר, אַזוי איר קענען אויסקלייַבן אַלע דיווס וואָס טאָן ניט האָבן עטלעכע ספּעציפיש קלאַס. און אַז ס 'נאָר אַ נוציק וועג צו באַקומען אַ הקדמה צו ווי דעם סעלעקציע אַרבעט. איך וועט ווייַזן עטלעכע באַטאָנען ביישפילן אין אַ רגע. אַוואַנסירטע סעלעקטאָרס ביסט - די ביסט נאָר אַ ביסל ביישפילן. עס זענען דאַזאַנז פון די, אָבער אויב איר ווילן צו אויסקלייַבן אַלע די בילד Tags ין עטלעכע עלעמענט, דעמאָלט איר נאָר טאָן: בילד. אויב איר ווילן צו אויסקלייַבן דעם אַפֿילו עלעמענטן, למשל, אויב עס זענען 20 פון זיי, איר ווילן צו אויסקלייַבן 0, 2, 4, 6 און אַזוי אויף, איר טאָן: אַפֿילו, אָדער איר קענען אויך טאָן: מאָדנע. די ביסט פּסעוודאָ סעלעקטאָרס, וואָס מיטל אַז זיי פאקטיש צונויפרעכענען יעדער אנדערע עלעמענט גאַנץ ווי נאָר געגאנגען און סאַלעקטינג אַלע פון ​​זיי. איר קענען אויך - יעדער עלעמענט קענען אויך האָבן ספּעציפיש אַטראַביוץ. אזוי, למשל, קלאַס = צענטער איז אויך אַ אַטריביוט. פֿאַר דעם אַנקער פאַרבינדן, הרעף, כייפּערטעקסט דערמאָנען, איז אַ אַטריביוט אויך. אזוי איר קענען אויסקלייַבן עפּעס אַז לינקס צו אַ ספּעציפיש בלאַט אָדער נאָר - עס ס 'טאַקע אַלגעמיין. איר קענען אויסקלייַבן עפּעס מיט קיין אַטריביוט אַז איר 'ד ווי. און דעמאָלט, אויך, אַטריביוט כּולל. אויב איר, למשל, געוואלט צו אויסקלייַבן אַלע די אַרייַנשרייַב עלעמענטן וואָס האָבן די וואָרט "פאָרן" ווי די נאָמען פון זיי, אויב אַ בלאַט האט אַ אַרייַנשרייַב טעקסט בלאָק אַז ס גערופן "פּאַראָל," אַז 'ד ווערן איין וועג איר קען אויסקלייַבן אַז. און עס זענען פילע מער. איר קענען גיין פאָרויס און קוק בייַ די דאַקיומענטיישאַן און זען ספּעציפיש ביישפילן פון ווי עס אַרבעט. דער ווייַטער זאַך איז דאַם מאַניפּיאַליישאַן. נאָך מיר אויסקלייַבן עלעמענטן, מיר וועלן ווילן צו פאקטיש טאָן שטאָפּן מיט זיי. אזוי ווייַט מיר האָבן נישט געקוקט בייַ אַז בייַ אַלע, אָבער אויב איר קוק בייַ די דאַקיומענטיישאַן, דאָרט ס 'טאַקע אַ פּלאַץ וואָס מיר געקענט טאָן. אין דעם פונט, מיר ניטאָ געגאנגען צו אויסקלייַבן עלעמענטן אויף דעם פּרעזענטירונג און מאַניפּולירן זיי ניצן דזשקווערי. ווייַל דאָס איז ימפּלאַמענאַד ניצן דזשקווערי, מיר האָבן צוטריט צו די דזשקווערי ביבליאָטעק, און מיר קענען נוצן יענע פאַנגקשאַנז ין דעם קאָד. איינער נוצלעך זאַך וואָס איר זאלט ​​נישט וויסן וועגן איז די קאַנסאָול. און גוגל קראָום איז וואָס איך בין ניצן. איר קענען דריקן אַלט באַפֿעל דזש אָדער אַלט קאָנטראָל דזש צו עפענען די קאַנסאָול. אין פירעפאָקס איך טראַכטן עס ס באַפֿעל יבעררוק ק אָדער קאָנטראָל שיפט קיי אין סאַפאַרי איר האָבן צו גיין טוישן עטלעכע סעטטינגס. עס ס אַ לינק אויב איר 'ד ווי צו טאָן עס, אָבער איך רעקאָמענדירן געטינג קראָום אָדער פירעפאָקס. אזוי לאָזן ס עפענען זיך די קאַנסאָול, עס ס אַראָפּ דאָ. עס אַלאַוז איר צו בייסיקלי נאָר טאָן עפּעס איר ווילן. אזוי איר קענען נאָר טיפּ אין שאַפֿן אַ בייַטעוודיק גערופן X, X = 5, לאָזן ס זען וואָס X + 2 איז. איר קענען אַפֿילו טאָן עפּעס ווי קס + לאָזן ס זען, X + 45, אַז וועט זייַן קס50. איר קענען נאָר טאָן עטלעכע טיפּיש דזשאַוואַסקריפּט שטאָפּן. אבער איר קענען אויך טאָן דזשקווערי אין דאָ. אזוי לאָזן 'ס קוק אין דעם ערשטער אַספּעקט דאָ. מיר ניטאָ געגאנגען צו שאַפֿן אַ בייַטעוודיק גערופן HTML, וואָס איז אַ שטריקל. עס האט אַ פּאַראַגראַף פאַרבינדן אין עס, אַז ס גערופן עטלעכע נייַ טעקסט. אזוי מיר האָבן דעם HTML, עס ס עטלעכע נייַ טעקסט, אין פּאַראַגראַף טאַגס. איצט מיר פאקטיש ווילן צו לייגן עס צו דער בלאַט. איך שטעלן אים אַרויף אַזוי אַז די HTML פֿאַר דעם פּאַראַגראַף, דעם טיטל דאָ, איז צוגעבן שייַן. אויב מיר אויסקלייַבן צוגעבן שייַן און דעמאָלט צוגעבן צו אים די HTML בייַטעוודיק איך נאָר באשאפן, עס וועט לייגן אַז HTML אין די סוף, רעכט נאָך דעם פּאַראַגראַף פאַרבינדן. אזוי אויב מיר טאָן אַז - מיר אויסגעקליבן דעם פּאַראַגראַף, און מיר ווע גערופן די צוגעבן פונקציאָנירן מיט די HTML בייַטעוודיק איך נאָר צוגעגעבן, עס וועט לייגן אַז נייַ טעקסט רעכט דאָרט אויף דער זייַט. מיר קענען אויך פּרעפּענד, וואָס מיטל עס וועט גיין פאר, אין די אָנהייב פון וואָס עלעמענט. אזוי עס איז עטלעכע נייַ טעקסט אין דעם אָנהייב און דערנאָכדעם. איך קענען גיין פאָרויס און דערפרישן צו באַקומען באַפרייַען פון דעם שטאָפּן איך ווע נאָר געטאן. אבער אַז ס 'אַ בייַשפּיל פון ווי איר קענען נוצן די פּרעפּענד און צוגעבן מעטהאָדס צו מאַניפּולירן שטאָפּן אויף דעם בלאַט, לייגן עטלעכע HTML. איר קענען אויך טוישן קלאסן. צוריק אין דעם נוסח טעקע, איך ווע באשאפן דעם פֿאַר די געווינען קלאַס וואָס האט טעקסט קאָליר רויט, עטלעכע הינטערגרונט פֿאַרב, און אַ טעקסט שאָטן. עס קוקט כידיאַס, אָבער איך קענען פאקטיש - דעם פּאַראַגראַף קאָראַספּאַנדז צו סאָרט שייַן. אזוי איך קענען לייגן די קלאַס פֿאַר די געווינען. איך קענען ויספירן דעם אין די קאַנסאָול, און וואָס וועט לייגן אַז קלאַס, און איצט עס קוקט כידיאַס, ווי דערוואַרט. די קסס אויטאָמאַטיש געץ געווענדט צו די קלאסן אַז איר - אויב דאָרט ס קסס פֿאַר אַ סאָרט, עס אויטאָמאַטיש געץ געווענדט אויב איר טוישן די סאָרט פון אַן עלעמענט. דעמאָלט מיר קענען נאָר אַראָפּנעמען עס ניצן באַזייַטיקן קלאַס. אזוי אויב איר האָבן עטלעכע פּרעדעפינעד קלאסן ווי רויט אָדער כיילייטיד, און דעמאָלט איר ווילן צו צולייגן די צו עלעמענטן, איר טאָן ניט האָבן צו טאָן אַלע די קסס סטילינג יעדער צייַט. איר קענען נאָר לייגן די סאָרט צו אַן עלעמענט, און דעמאָלט עס וועט אויטאָמאַטיש ווערן - עס וועט אויטאָמאַטיש קוקן צונעמען פֿאַר אַז קלאַס. מיר קענען אויך אַראָפּנעמען זאכן; אַזוי איך בין געגאנגען צו אויסקלייַבן אַלע די דיווס אויף דעם בלאַט און באַזייַטיקן זיי. וואָס איז אַז געגאנגען צו קוקן ווי? עס ס געגאנגען צו קוקן ווי גאָרנישט, אַזוי דאָרט ס 'פאקטיש גאָרנישט לינקס. מייַן פּרעזענטירונג איז ניטאָ. איך קענען דערפרישן און ברענגען עס צוריק, גליק, ווייַל עס ס נאָר פליסנדיק אַמאָל, אָבער אַז ס 'אַ בייַשפּיל פון רימוווינג, אויב איר ווילן צו גאָר צעשטערן אַן עלעמענט אַוועק דעם בלאַט. איר קענען אויך אָווועררייט, און איך בין געגאנגען צו אויסקלייַבן אַלע די פּאַראַגראַף טאַגס אויף דעם בלאַט און גיין ין זיי און פאַרבייַטן וועלכער טעקסט זיי האָבן אין זיי מיט נאָר די וואָרט "טעסטינג." אויב איר טאָן דעם, איר וועט פאַרבייַטן יעדער פּאַראַגראַף אויף דעם בלאַט מיט דעם טעסטינג. יאָ. זיי ניטאָ אַלע ריפּלייסט מיט טעסטינג. אזוי אַז ס 'אַ בייַשפּיל פון אַקסעסינג די טעקסט און אָווועררייטינג עס. איר קענען אויך צוריקקריגן אינפֿאָרמאַציע, און דאָס איז טאַקע קיל פֿאַר אַרייַנשרייַב באָקסעס. אויב איר האָבן אַ אַרייַנשרייַב קעסטל אַז מענטשן זענען טייפּינג שטאָפּן זיך, מענטשן זענען טייפּינג שטאָפּן זיך עס, דאָ מיר אויסקלייַבן די אַרייַנשרייַב, קיין אַרייַנשרייַב פאַרבינדן מיט אַ טיפּ פון טעקסט. אין דעם פאַל, דאָרט ס נאָר איין אַרייַנשרייַב קעסטל אין די גאנצע פּרעזענטירונג, אַזוי מיר וועט נאָר אויסקלייַבן די ערשטער איינער, און דעמאָלט מיר רופן די וואַל פונקציאָנירן אויף עס. וואָס קערט די ווערט, און פֿאַר אַ אַרייַנשרייַב קעסטל, די ווערט איז נאָר וועלכער כאַפּאַנז צו זייַן ין עס. אזוי אויב מיר טאָן דעם, עס נאָר קערט די שטריקל שטאָפּן. און אויב מיר רופן עס ווידער נאָך שרייבן מער שטאָפּן, עס טורנס אין מער שטאָפּן. אַז ס 'איין גרויס וועג צו צוטריט יסודות פון אַן אַרייַנשרייַב קעסטל, און דעמאָלט טשעק, איז דאָס אַ גילטיק Email אַדרעס, איז דאָס אַ גילטיק דאַטע, למשל. איר קענען נאָר צוריקקריגן שטאָפּן טייקעף ווי מענטשן זענען טייפּינג עס, און דעמאָלט טשעק צי עס ס גילטיק, שיקן עס צוריק צו אַ שליח, טאָן עפּעס איר ווילן מיט אים. און אַז ס ווי איר צוטריט וואָס ס 'ין די באָקסעס. איר קענען אויך מאָדיפיצירן קסס גלייַך, אַזוי אַנשטאָט פון אַדינג אַ סאָרט וואָס האט עטלעכע פּרעדעפינעד פּראָפּערטיעס, איר קענען נאָר לייגן וועלכער קסס איר ווילן צו עפּעס. אזוי לאָזן ס אויסקלייַבן גוף, וואָס איז די גאנצע פּרעזענטירונג, און קאָליר איז די פאַרמאָג אַז דיפיינז וואָס די פארבן די טעקסט איז. אויב מיר טוישן עס צו רויט, אַלע די טעקסט אין דעם בלאַט וועט קער צו רויט. מיר קענען טאָן עפּעס ווי הינטערגרונט פֿאַרב בלוי, עס מיר גיין; עס ס שיין. איר קענען טאָן עפּעס איר ווילן מיט דעם. ניצן די קסס פאַרמאָג, איר קענען טאַקע מאָדיפיצירן ווי עפּעס קוקט בייַ קיין צייַט. דער ווייַטער זאַך איז יפעקס. יפעקס זענען בייסיקלי די זעלבע זאַך ווי מאַדאַפייינג די קסס, אָבער זיי פאקטיש צושטעלן עטלעכע עקסטרע אַנאַמיישאַן צו עס. אזוי אַנשטאָט פון נאָר ווייַזונג אָדער כיידינג עפּעס אָדער טשאַנגינג די קאָליר, איר קענען פאקטיש מאַכן עס אַנאַמייטיד. דאָ ס דער דאַקיומענטיישאַן, אויב איר ווילן צו נעמען אַ קוק אין די ברייט דאַקיומענטיישאַן פֿאַר עס. אבער איך בין געגאנגען צו דעקן די הויפּט אָנעס. עס זענען די ווייַזן און באַהאַלטן פּראָפּערטיעס. ווייַזן / באַהאַלטן שייַן פאקטיש קאָראַספּאַנדז צו דעם גאַנץ קעסטל, אַזוי אויב איך באַהאַלטן עס, עס וועט נאָר פאַרשווינדן. און איך קענען ווייַזן עס ווידער אויב איך ווילן צו מאַכן עס קומען צוריק. און עס ס צוריק. עס האט נישט פאקטיש פאַרשווינדן, איך האט נישט פאקטיש באַזייַטיקן עס פון די בלאַט, איך נאָר שטעלן די קסס פאַרמאָג פון וויזאַביליטי צו פאַרבאָרגן אַזוי איר קענען נישט זען עס ענימאָר. עס ס אויך רוק אַרויף און רוק אַראָפּ; אַז אַלאַוז איר צו האָבן דעם ווירקונג. עס סליידז אַרויף צו פאַרשווינדן, און נאָך עס פארשווינדט איר קענען רוק עס אַראָפּ צו מאַכן עס קומען צוריק. און איצט עס ס צוריק. עס ס אויך דעם וועלקן ווירקונג, וואָס - וועלקן שייַן קאָראַספּאַנדז צו דעם קעסטל. אויב איך וועלקן עס אויס, דעריבער עס וועט סלאָולי פאַרשווינדן. איך קענען אויך וועלקן עס אין, און עס וועט קומען צוריק. איר קענען אויך טאָן וועלקן צו, וואָס איז ספּעציפיש צו די וועלקן פונקציאָנירן. איר קענען האָבן עס וועלקן צו קיין ספּעציפיש אָופּאַסאַטי אַז איר ווילן. אזוי אויב איר וועלקן עס סלאָולי צו 0.5, עס וועט ווערן האַלב קענטיק. איך קענען מאַכן עס גיין צו 0.1, און צוריק צו 1 צו מאַכן עס גאָר קענטיק ווידער. אַז ס 'נאָר אן אנדער אַנאַמיישאַן אַז איר קענען טאָן. עס זענען אויך די טאַגאַל יפעקס. אזוי איך בין געגאנגען צו אויסקלייַבן דעם טאַגאַל שייַן, וואָס קאָראַספּאַנדז צו דעם קעסטל, און אויף וואָס div איר קענען רופן טאַגאַל; אויב עס ס קענטיק עס וועט ווערן ומזעיק, אויב עס ס ומזעיק עס וועט ווערן קענטיק ווידער. אזוי איך נאָר גערופן דעם טאַגאַל פונקציאָנירן צוויי מאָל; דער ערשטער איינער איז געווען די זעלבע זאַך ווי באַהאַלטן, די רגע רופן איז געווען די זעלבע זאַך ווי אַ ווייַזן. און איר קענען אויך טאָן דעם מיט אַ וועלקן טאַגאַל, וואָס טוט די זעלבע זאַך, אַחוץ עס פאקטיש פיידז. און זעלבע זאַך מיט די רוק טאַגאַל. עס זענען טשיינד יפעקס ווי געזונט, וואָס מיטל אויב איר אויסקלייַבן אַן עלעמענט און נאָר רופן אַ בינטל פון אַנאַמיישאַן מעטהאָדס אויף אים, אויב איר געוואלט עס צו וועלקן אויס, דעריבער רוק אַראָפּ, און דעמאָלט באַהאַלטן און דעמאָלט וועלקן אין, עס וועט טאָן זיי אין אַ רודערן. אזוי פאַרשווונדן, געקומען צוריק - פֿאַר עטלעכע סיבה, דער באַהאַלטן האט נישט פּאַסירן. זאל ס פּרובירן עס אויס. יאָ, אַזוי עס פיידיד אויס און דעמאָלט עס סליד אַוועק. און עס זענען שעפע מער. איר קענען נוצן די ופלעבן פֿונקציע צו מאַכן דיין אייגן אַנאַמיישאַנז, וואָס איז פערלי קאָמפּלעקס, אָבער עס גיט איר מיט ינפאַנאַט עקסטענסיביליטי. איר קענען מאַכן קיין מין פון אַנאַמיישאַן איר ווילן. איר קענען אויך נוצן ריי צו ריי אַרויף קייפל אַנאַמיישאַנז אין אַ צייַט. אזוי אויב איר ווילן עפּעס צו פליען אַריבער די בלאַט, רוק פון די שפּיץ רעכט צו דער דנאָ לינקס, איר קענען טאָן אַז, און נאָר האָבן אַ בינטל פון אַקשאַנז געגאנגען איינער נאָך די אנדערע. דער ווייַטער זאַך מיר ניטאָ געגאנגען צו רעדן וועגן איז געשעענישן. געשעענישן לאָזן איר - אַזוי ווייַט, מיר ווע נאָר געווען טייפּינג זאכן אין די קאַנסאָול און וואָס איז איין וועג צו מאַכן דעם פּאַסירן, אָבער אויף אַ פאַקטיש בלאַט, איר ניטאָ ניט געגאנגען צו קענען צו מאַכן דער באַניצער טיפּ זאכן אין די קאַנסאָול. איר ווילן דאס צו פּאַסירן אויטאָמאַטיש. פֿאַר וואָס, איר דאַרפֿן צו נוצן געשעענישן וואָס אַקטאַווייט אויף עטלעכע זיכער געשעעניש געשעעניש. איר קענען קאָנטראָלירן די דאַקיומענטיישאַן פֿאַר די פול פרטים. אזוי לאָזן ס זען. מיר ווילן צו באַהאַלטן אָדער ווייַזן די קעסטל, אָבער רעכט איצט דעם קנעפּל טוט נישט טאָן עפּעס ווייַל איך האט נישט ינסטרומענט עס נאָך. איך בין געגאנגען צו גיין צו די פאַקטיש HTML בלאַט. דאָ ס דער רוק. עס ס אַ div פֿאַר די רוק. עס האט די סאָרט פון רוק. עס ס די טעקסט. איצט, דאָרט ס דעם קעסטל און די קעסטל קנעפּל. ווי וואָלט מיר פאקטיש מאַכן דעם פאַרשווינדן? ערשטער פון אַלע, לאָזן ס שרייַבן אַ פֿונקציע וואָס מאכט די קאַסטן שייַן פאַרשווינדן. דאס איז די סינטאַקס פֿאַר פונטיאָן, לאָזן 'ס נאָר רופן עס הידעטהעבאָקס. עס טוט נישט נעמען קיין טענות, ווייַל עס זענען קיין טענות צו זייַן גענומען. מיר קענען אויסקלייַבן די קאַסטן שייַן. אזוי ניצן די דזשקווערי אויסקלייַבן, מיר קענען אויסקלייַבן קאַסטן שייַן, און דעמאָלט נאָר מאַכן עס פאַרשווינדן. זאל ס מאַכן עס וועלקן אויס. אויב מיר געלאפן דעם פֿונקציע אין די פאַקטיש קאַנסאָול, מיר געקענט דעפינירן דעם פֿונקציע; מיר קענען רופן הידעטהעבאָקס, און עס אַרבעט. אבער מיר ווילן עס צו פּאַסירן ווען די קנעפּל איז פאקטיש געדריקט. צו טאָן וואָס, מיר האָבן צו נוצן אַ געשעעניש. צו בינדן אַ געשעעניש צו עטלעכע ספּעציפיש קנעפּל אָדער עטלעכע קאַמף געשעעניש, מיר האָבן צו אויסקלייַבן דעם עלעמענט אַז די געשעעניש וועט צינגל - אָדער אַז וועט צינגל די געשעעניש, נעבעכדיק. אזוי ערשטער פון אַלע, לאָזן ס אויסקלייַבן די קעסטל קנעפּל שייַן ווייַל אַז ס 'די קנעפּל, און איצט, פֿאַר וואָס קנעפּל, מיר ווילן צו שאַפֿן אַ אַנאַמיישאַן ווען עס ס קליקט. אזוי דאָרט ס דעם גיט פונקציאָנירן. עס אַלאַוז איר צו בינדן אן אנדער פונקציאָנירן צו עס. דאס פונקציאָנירן נעמט אן אנדער פונקציאָנירן ווי אַן אַרגומענט מיר קענען פאָרן אין די הידעטהעבאָקס פונקציאָנירן, און ווען דאָס קנעפּל איז קליקט, אַז פונקציאָנירן וועט אויטאָמאַטיש ויספירן. אזוי דעם וועט אַרבעטן אויב מיר ראַטעווען דעם, איך וועט דערפרישן, און - איין רגע, איך בין נעבעכדיק. זאל מיר פאַרריכטן דעם טאַקע געשווינד. אָוקיי. עס מיר גיין. אזוי איצט די קעסטל איז דיסאַפּירינג ווען מיר גיט די קנעפּל. מיר קענען אויך טוישן דעם צו נאָר פאַדעטאָגגלע, טוישן עס נאָר צו באַהאַלטן אָדער ווייַזן די קעסטל, און דאָס וועט אויך אַרבעט אויך, אויב מיר דערפרישן. מיר קענען באַהאַלטן עס, מיר קענען אויך ווייַזן עס, און וואָס וועט פאָרזעצן צו אַרבעטן. אן אנדער זאַך מיר קענען טאָן איז, מיר טאָן נישט פאקטיש האָבן צו דעפינירן דעם הידעטהעבאָקס פֿונקציע איידער מיר רופן דעם גיט פונקציאָנירן. אזוי אַנשטאָט פון דיפיינינג די פֿונקציע און פאַך הידעטהעבאָקס, מיר ניטאָ נאָר געגאנגען צו רופן עס אויב דאָס זאַך איז קליקט. אזוי מיר קענען דעפינירן עס אַנאַנאַמאַסלי אין דאָ, וואָס איז אַ שטריך וואָס דזשאַוואַסקריפּט האט. איר קענען דעפינירן אַ פֿונקציע; נאָרמאַלי, מיר וואָלט זאָגן פונקציאָנירן הידעטהעבאָקס מיט טענות, אָבער אַנשטאָט, מיר קענען נאָר זאָגן פונקציאָנירן קיין טענות, אָנהייבן דעם געגרייַזלט בראַסע צו דעפינירן דעם פֿונקציע, נאָענט אַז געגרייַזלט בראַסע, און דעמאָלט נאָר דעפינירן די פֿונקציע אין דאָ, ין דער ערשטער פּערענטאַסיס און די לעצטע פּערענטאַסיס וואָס שטימען צו די טענות פון דעם גיט פונקציאָנירן. אזוי מיר ניטאָ גייט פארביי אין דעם פֿונקציע, מיר קענען נאָכמאַכן דעם שורה פון קאָד רעכט דאָ, און וואָס וועט טאָן די פּינטלעך זעלבע זאַך. און איצט מיר טאָן ניט האָבן דעם טראַפ פאַדעטהעבאָקס פֿונקציע וואָס איז געזעסן אַרום פֿאַר קיין קלאָר סיבה. די פֿונקציע איז געווען דיפיינד אַנאַנאַמאַסלי, עס טוט נישט האָבן אַ נאָמען. עס וועט נאָר ויספירן ווען מיר גיט אויף די קעסטל קנעפּל. אזוי רעפרעשינג אַמאָל מער, איינער מער צייַט, און איר קענען זען אַז עס נאָך אַרבעט. און אַז ס ווי איר מאַכן געשעענישן. עס זענען אַ פּלאַץ פון פאַרשידענע געשעענישן וואָס מיר קענען נוצן. איך בין געגאנגען צו באַשטימען צוריק צו ניצן די קאַנסאָול צו נאָר ווייַזן איר ווי די אַרבעט. די ידס פֿאַר יעדער פון די שטימען צו יעדער קעסטל. אזוי דעם קעסטל איז גיט שייַן, דאָס איינער איז שליסל שייַן, און דאָס איינער איז מויז שייַן. איינער מער זאַך איז אַז עס ס דעם קאַמף פונקציאָנירן; גאַנץ ווי טייפּינג עס אויס יעדער צייַט, איך פאקטיש זענען פאָרויס און דיפיינד דעם קאַמף פונקציאָנירן אַראָפּ דאָ. עס טוט די זעלבע זאַך ווי די הידעטהעבאָקס פונקציאָנירן. עס געץ דעם קעסטל און יעדער פיידז עס אויס אָדער פיידז עס ין און אַז ס וואָס מיר ניטאָ קענען צו נוצן עס דאָ. אזוי אויב מיר גיט אויף דעם גיט שייַן, מיר ווילן צו מאַכן די קעסטל פאַרשווינדן אָדער ריאַפּיר. עס ס די זעלבע זאַך ווי די קנעפּל אַז מיר האט אין די לעצטע רוק. איצט נאָך מיר רופן אַז, מיר קענען גיט אויף דעם און דעם קעסטל וועלן פאַרשווינדן, דעריבער גיט אויף אים ווידער און דער קאַסטן וועט ריאַפּיר. אַז ס 'שיין פּשוט. טאָפּל גיט טוט די זעלבע זאַך, אַחוץ עס ריקווייערז אַ טאָפּל גיט. אזוי אויב איר גיט אויף אים אַמאָל און גיט אויף אים ווידער גאָרנישט וועט פּאַסירן, אָבער אויב איר טאָפּל גיט געשווינד, עס וועט פאַרשווינדן. אויב איר טאָפּל גיט ווידער, עס וועט קומען צוריק. אזוי אַז ס 'שיין פּשוט. קלאַוויאַטור אַרייַנשרייַב איז מין פון טשודנע; איך טאָן ניט טראַכטן עס פאקטיש אַרבעט אין דעם בייַשפּיל ווייַל די שליסל אַראָפּ, שליסל אַרויף און שליסל דריקן און אנדערע שליסל אַקשאַנז אַקטאַווייט קיין ענין וואָס עלעמענט איר בינדן עס צו. למשל, אַפֿילו אויב איך געבונדן שליסל אַראָפּ צו גוף אָדער עפּעס אַנדערש גאָר, דעמאָלט עס וואָלט נאָך אַקטאַווייט קיין ענין - עס ס 'נישט ספּעציפיש. איך טאָן ניט האָבן צו זייַן געבן אַ קליק אויף דעם און דריקן אַ שליסל צו מאַכן עפּעס פאַרשווינדן. עס וואָלט זייַן אַקטיווייטיד ראַגאַרדלאַס פון וואָס עלעמענט איך בין דערווייַל ין אזוי די טאָן נישט פאקטיש אַרבעט אין דעם בייַשפּיל ווייַל עס טוט נישט דערקענען מיר ווי קומט אַרייַנשרייַב אין די קלאַוויאַטור אַרייַנשרייַב div. אבער אויב איר קוק בייַ די מויז אַקשאַנז, דער ערשטער איינער איז האָווער, און עס קענען טאָן עטלעכע פון ​​דעם ניצן קסס. אויב איר נוצן קסס, איר קענען מאַכן עס אַזוי אַז אויב איר האָווער איבער עפּעס, דעמאָלט זייַן נוסח ענדערונגען. אבער ניצן דזשקווערי איר קענען טוישן די סטיילז פון אנדערע זאכן ווי געזונט. אזוי, למשל, מיר ניטאָ געגאנגען צו רופן קאַמף אויב מיר האָווער איבער דעם div. אַז מיטל אויב מיר האָווער איבער אים, דעמאָלט דער קעסטל וועט פאַרשווינדן. אויב מיר מאַך אַוועק פון אים, דעם קעסטל וועלן ריאַפּיר. אויב מיר רופן דעם און האָווער איבער אים, די קעסטל טוט פאַרשווינדן, און ווי באַלד ווי מיר מאַך אַוועק, עס קומט צוריק. אויב מיר רופן דעם האָווער פונקציאָנירן אויף די מויז שייַן, וואָס קאָראַספּאַנדז צו דעם קעסטל, דעריבער אויב מיר האָווער איבער די קעסטל, דעריבער די קעסטל וועט פאקטיש פאַרשווינדן - עס ס זייַענדיק פאַנגקי רעכט איצט, אָבער - אויב מיר מאַך אַוועק פון אים, עס וועט ריאַפּיר. רעכט איצט עס ס קאַפּויער פֿאַר עטלעכע סיבה. די מויז אַרייַן און מויז מאַך פאַנגקשאַנז ביסט עפּעס ענלעך, אָבער אַ ביסל אַנדערש. מויז אַרייַן נאָר אַקטאַווייץ ווען די מויז גייט אריין די קעסטל, ווי דערוואַרט. אזוי אויב איר מאַך אין עס, עס וועט פאַרשווינדן. אבער עס וועט נישט ריאַפּיר ווען איר מאַך אַוועק; איר וועט האָבן צו רירן צוריק אַנטו עס פֿאַר עס צו קומען צוריק. עס ס אויך די מויז מאַך פונקציאָנירן, וואָס וועט אַקטאַווייט ווען די מויז איז אַפֿילו פאָרשטעלן אין די קעסטל. אזוי עס וועט נאָר האַלטן אויף געגאנגען, פאַדינג אין און אויס. און עס ס 'פאקטיש לאָגינג - עס מיינט ווי עס ס נאָר פאַדינג אין און אויס, אָבער עס ס 'פאקטיש לאָגינג אַ פּלאַץ מער אַקשאַנז ווי דעם, אַזוי ווען איר מאַך אַוועק עס וועט נאָר האַלטן געגאנגען ווייַל עס לאָגד ווי אַ טויזנט פון זיי. אפֿשר נישט אַ טויזנט. אפֿשר פינף. עס לאָגס מער ווי אַז. די פונט איז, אַלע די מויז אַקשאַנז, דאָרט זענען אַ פּלאַץ פון זיי. איר קענען לייענען אַרויף אויף די אנדערע אָנעס, אָבער זיי זענען אַלע אַ ביסל אַנדערש, און איר קענען קלייַבן וועלכער איינער איר דאַרפֿן פֿאַר וועלכער ספּעציפיש ציל איר ניטאָ טריינג צו טאָן. דער ווייַטער זאַך איך בין געגאנגען צו רעדן וועגן איז AJAX. AJAX, איך וויסן מיר האבן נישט דעקן דזשאַוואַסקריפּט אין ווי פיל טיף דעם יאָר, אַזוי איך בין נאָר געגאנגען צו רעדן וועגן AJAX אין אַלגעמיין פֿאַר אַ מינוט. AJAX שטייט פֿאַר אַסינטשראָנאָוס דזשאַוואַסקריפּט און קסמל. עס ס בייסיקלי, למשל, ווען איר ניטאָ אויף פאַסעבאָאָק און עס פּושיז איר אַ אָנזאָג, אַז ס ווייַל AJAX איז פליסנדיק אויף אייער וועב בלעטערער. יעדער פּאָר פון סעקונדעס אייער וועב בלעטערער ס פאקטיש געגאנגען צו פאַסעבאָאָק ס סערווערס, אַסקינג זיי, טאָן איר האָבן עפּעס נייַ פֿאַר מיר, און דעמאָלט עס קומט צוריק צו איר. דאס אַלאַוז איר צו שיקן ריקוועס צו אַ סערווירער אָן פאקטיש ווייל צו מאַסע די בלאַט. אזוי נאָרמאַלי, אויב איר ניטאָ נאָר ניצן פפּ און אַ דאַטאַבאַסע, איר האָבן צו דערפרישן די בלאַט איידער איר קענען באַקומען נייַ אינפֿאָרמאַציע פון ​​די סערווער. אבער ניצן AJAX, איר קענען ציען פֿאַר אַז נייַ אינפֿאָרמאַציע קעסיידער, אָדער ציען פֿאַר עס ווען איר גיט אַ קנעפּל אָדער עפּעס ווי אַז. אזוי דעם אַלאַוז אונדז צו שיקן ריקוועס אָן רעלאָאַדינג דער בלאַט, און מיר קענען נוצן אָדער באַקומען אָדער פּאָסטן ריקוועס. באַקומען ריקוועס זענען, למשל, אויב איר צו צו Google.com און טאָן ק = פּרובירן. אַז ס געבן זיי אַ אָנפֿרעג פּרובירן. און אַז ס אַ באַקומען בעטן ווייַל עס ס 'גייט פארביי אין די פּאַראַמעטערס אין די URL זיך. א פּאָסטן בעטן איז ווי אויב איר ניטאָ שיקן זיי דורך פּאָסטן. עס ס ווי איר שטעלן אים אין אַ בריוו און שיף עס אַוועק צו זיי, אָבער זיי טאָן נישט פאקטיש זען די אינהאַלט. זיי ניטאָ ניט קענטיק אין דעם URL. איר קענען נישט גלייַך דרוקן עס אין; איר האָבן צו שיקן עס כּמעט בעסאָד. עס ס אין אַ פּאָסטן. אבער ניצן דזשקווערי, איר קענען טאָן באַקומען און פּאָסטן ריקוועס פיל מער לייכט ווי איר נאָרמאַלי קען ניצן נאָר קלאָר דזשאַוואַסקריפּט. איר קענען אָנפֿרעג אַפּיס ניצן באַקומען ריקוועס, און איר קענען אויך טשעק פֿאַר לאָגין אינפֿאָרמאַציע. אויף דער ווייַטער בלאַט, איך באשאפן דעם, וואָס פרעגט, "וואָס ס פֿאַר לאָנטש?" ניצן די האַרוואַרד עסנוואַרג אַפּי, אַזוי לאָזן 'ס ציען וואָס אַרויף. דאס איז נאָר אַ משל פון ווי איר קענען נוצן דזשקווערי צו טאָן אַ באַקומען בעטן צו אַ אַפּי און באַקומען אינפֿאָרמאַציע צוריק פון אים. אזוי מיר ווילן צו זען די מעניו פֿאַר הייַנט, און מיר ווילן צו זען וואָס ס פֿאַר לאָנטש. דאָ ס דער URL צו שאַפֿן אַ באַקומען בעטן אין דזשקווערי. איר נוצן דעם $. באַקומען פונקציאָנירן. דער ערשטער אַרגומענט איז די URL, אַזוי פּונקט וואָס איר ניטאָ קוועריינג. דעמאָלט דער ווייַטער אַרגומענט איז אַ פֿונקציע וואָס עקסאַקיוץ ווען דער באַקומען בעטן איז גאַנץ. אזוי איר שיקן אַוועק עטלעכע בעטן צו די סערווער, וואַרטן פֿאַר אים צו קומען צוריק. ווען עס טוט קומען צוריק, איר ניטאָ געגאנגען צו נעמען עטלעכע קאַמף מיט דער דאַטע, אז ס צוריק פון די סערווער. זאל ס גיין פאָרויס און קאָד דעם ווי געזונט. איך האט נישט קאָד דעם אָדער, אויף ציל. דאָ ס דער טאָדאָ. ערשטער פון אַלע, לאָזן 'ס נוצן די געשעעניש ביינדינג אַזוי אַז ווען דאָס קנעפּל איז געדריקט, מיר שיקן אַוועק אַ באַקומען בעטן. און ווען אַז באַקומען בעטן קערט מיט עטלעכע דאַטן, מיר ניטאָ געגאנגען צו שרייַבן עס אין דעם מאָלצייַט אינפֿאָרמאַציע שייַן div. ערשטער פון אַלע, לאָזן ס אויסקלייַבן די עסנוואַרג קנעפּל שייַן. ווען עס ס קליקט, מיר ווילן עס צו טאָן עפּעס. זאל ס נאָר מאַכן עס אַ אַנאַנאַמאַס פוקטיאָן, ווי איידער. קענען ייַנוויקלען יענע געגרייַזלט ברייסאַז, און ווען דאָס קנעפּל איז געדריקט, מיר ווילן צו שיקן אַ באַקומען בעטן צו קאָנטראָלירן וואָס ס פֿאַר לאָנטש. צו טאָן וואָס, מיר קענען נאָר טיפּ אין $. באַקומען. דאס איז אַ דזשקווערי פונקציאָנירן, ניצן די דאָלאַר צייכן. עס נעמט אַ פּאָר פון טענות. דער ערשטער איינער איז די URL, די רגע איינער איז די קאַללבאַקק פונקציאָנירן, די פֿונקציע אַז ס גערופן ווען אַז בעטן פאקטיש קערט. זאל ס נאָר בויען די URL ערשטער. מיר קענען באַקומען עס פון די אַפּי אַז דוד געשריבן אַרויף. גיי דאָ, מיר קענען זען אַז עס ס food.cs50.net/api/1.3/menus, און דעמאָלט איר נאָר פאָרן אין די נעמען פון די פּאַראַמעטערס אַז איר וואָלט ווי. אזוי פּאַראַמעטער 1 איז ווערט 1. עס קוקט ווי נאָרמאַל דאַטע, אָנהייב טאָג, דיפאָלץ צו הייַנט אויב איר טאָן נישט אַרייַן עפּעס, און סוף טאָג אויך דיפאָלץ צו הייַנט אויב איר טאָן נישט אַרייַן עפּעס. אַז ס וואָס מיר ווילן. מיר ווילן צו נאָר באַקומען די אינפֿאָרמאַציע פֿאַר הייַנט. מיר ווילן די פֿאָרמאַט צו זייַן אין דזשסאָן. אַז ס נאָר אַרבאַטרערי; איר קענען נוצן קיין פאָרעם אַז איר ווילן. איר קענען נוצן קסוו, אָבער דזשסאָן איז דזשאַוואַסקריפּט אָבדזשעקט נאָטאַטיאָן. עס ס זייער גרינג פֿאַר דזשאַוואַסקריפּט צו פֿאַרשטיין וואָס עס מיטל, און מיר קענען דרוקן עס אויס מער לייכט אַז וועג. אזוי לאָזן ס בעטן עס אין דזשסאָן, און לאָזן ס בעטן לאָנטש. אזוי מאָלצייַט = לאָנטש. נאָר צו שרייַבן אַרויף אַז URL, מיר גיין צוריק דאָ. עס ס מעניוז. דער ערשטער פּאַראַמעטער איז רעזולטאַט = דזשסאָן ווייַל אַז ס וואָס מיר ווילן, און איר באַזונדער די פּאַראַמעטערס מיט אַ 'און.' די רגע פּאַראַמעטער איז - איך טאָן ניט געדענקען. מאָלצייַט. און מיר ווילן מאָלצייַט = לאָנטש. איר קענען פּרובירן דעם URL דורך טייפּינג עס אין אייער בלעטערער און געגאנגען צו אים. עס וועט געבן איר עטלעכע רעזולטאַט. עס ס נאָר אַ בינטל פון שטאָפּן אַז ס פֿאַר לאָנטש. עס ס אין דעם מיעס פֿאָרמאַט. מיר ווילן צו דרוקן עס אַנטו אונדזער בלאַט אין אַ בעסער פֿאָרמאַט. אזוי די URL איז ריכטיק, איצט מיר נאָר דאַרפֿן צו שרייַבן אַ פֿונקציע צו רופן צוריק ווען די בעטן איז מצליח. דאס פונקציאָנירן וועט פאקטיש נעמען אַן אַרגומענט. עס וועט זייַן דאַטן. די דאַטן איז וואָס קומט צוריק פון די באַקומען בעטן נאָך דער באַקומען בעטן איז געשען. מיר קענען טאָן די געגרייַזלט ברייסאַז; אין דאָ מיר שרייַבן די אַנאַנאַמאַס פֿונקציע אַז עקסאַקיוץ, ניצן אַז דאַטן ווען מיר באַקומען די אינפֿאָרמאַציע צוריק. אזוי דאַטן, ווען מיר טייפּט אין דעם URL, דאָס איז וואָס די דאַטן ס געגאנגען צו קוקן ווי. עס ס געגאנגען צו זייַן דעם ריזיק שטריקל. אבער די גוט זאַך איז, דזשאַוואַסקריפּט קענען פּאַרס עס דורך ניצן די דזשסאָנ.פּאַרסע פונקציאָנירן. אזוי לאָזן ס שאַפֿן אַ נייַ בייַטעוודיק גערופן פּאַרס דאַטן. און פּאַרס דאַטן איז אַ מענגע פון ​​אַבדזשעקס. יעדער כייפעץ כּולל אינפֿאָרמאַציע אַזאַ ווי - געזונט, לאָזן 'ס נעמען אַ קוק. עס האט אַ דאַטע, אַ מאָלצייַט, קאַטעגאָריע, רעצעפּט, אַלע דעם אנדערע שטאָפּן. אזוי לאָזן 'ס נאָר דרוקן אויס די נאָמען פֿאַר יעדער איינער. זאל ס יטעראַטע איבער די גאנצע מענגע פון ​​שטאָפּן, וואס מיר באַקומען צוריק פון אים, און נאָר דרוקן אויס יעדער איינער - דרוקן אויס דעם נאָמען פון יעדער איינער. דאס איז אַ פֿאַר שלייף. דזשאַוואַסקריפּט האט דעם נוציק סינטאַקס ווו איר קענען שאַפֿן אַ בייַטעוודיק און שלייף איבער אַ מענגע, און וואַר איך איז נאָר די יטעראַטאָר, אַזוי אַנשטאָט פון בעת ​​צו טאָן וואַר איך = 0, איך איז געווען ווייניקער ווי די לענג, איך + +, איר קענען נאָר טאָן וואַר איך אין פּאַרסט דאַטן. אין דעם בייַשפּיל, פּאַרסט דאַטן (איך) וועט שטימען צו די קראַנט עלעמענט פון די מענגע, די פאַקטיש כייפעץ. און מיר ווילן צו באַקומען די נאָמען אויס פון אים. אזוי לאָזן 'ס נאָר טאָן נאָמען. און די לעצטע זאַך איז, מיר ניטאָ געגאנגען צו האָבן עטלעכע דזשקווערי ווידער. פאקטיש לייגן עס צו די div, דעם מאָלצייַט אינפֿאָרמאַציע div אַז ס איצט ליידיק. אזוי לאָזן ס אויסקלייַבן אַז. מיר וועט נוצן דזשקווערי און אויסקלייַבן מאָלצייַט אינפֿאָרמאַציע div שייַן, אָדער מאָלצייַט אינפֿאָרמאַציע שייַן, נעבעכדיק. מיר ווילן צו צוגעבן צו דעם. אויב מיר האט פּרובירן, למשל, עס וואָלט נאָר אָווועררייט עס יעדער איין מאָל. אזוי מיר קענען נאָר צוגעבן דעם. די קראַנט עלעמענט אין דער מענגע, מיר וועט באַקומען די נאָמען אויס פון אים, און מיר וועט צוגעבן עס צו די סוף פון די מאָלצייַט אינפֿאָרמאַציע שייַן div. און דעמאָלט נאָר צו מאַכן עס קוקן קלינער, מיר וועט אויך צוגעבן אַ שורה ברעכן אַזוי עס ס ניט אַלע אויף איין ליניע. אזוי אויב אַלע גייט גוט, אַז זאָל זייַן גוט צו - ערשטער פון אַלע, ווען דאָס קנעפּל איז קליקט, עס וועט שיקן אַוועק אַ באַקומען בעטן צו דעם URL. ווען די דאַטן קומט צוריק פון אים, עס וועט פּאַרס עס, דרייַ עס אין דזשסאָן, שלייף איבער די גאנצע מענגע רעפּריזענטינג אַז דאַטן, און דעמאָלט צוגעבן דעם נאָמען און אַ שורה ברעכן צו יעדער שורה אין דעם מאָלצייַט אינפֿאָרמאַציע שייַן וואָס איז געווען ביז אַהער ליידיק. אזוי געגאנגען צוריק צו דעם בלאַט, מיר וועט דערפרישן, גיט, געפינען אויס - עס טוט נישט אַרבעטן. אַז ס 'נעבעך. און דאָס איז ווו דיבאַגינג קומט ין ינדעקס.הטמל, שורה 1. אַז ס טשיקאַווע. אַלע רעכט, געזונט, גאַנץ ווי פאַרברענגען צייַט טאן דעם, איך בין נאָר געגאנגען צו ציען אַרויף די געטאן טעקע אַז איך האָבן, וואָס איז די געענדיקט ווערסיע. איך בין נישט זיכער וואָס דער חילוק איז, אָבער מיר קענען נאָר עפענען דעם אַרויף אַנשטאָט. און מיר גיין צו די AJAX, און דאָס זאָל אַרבעטן ריכטיק. וואָס איז וואָס איז געווען פֿאַר לאָנטש הייַנט, אין קיין באַזונדער סדר, מיט ציטירט אַרום אים, אַזוי עס ס 'נישט די פּריטיאַסט. אבער, דאָך, אויב איר האבן טאן דעם פֿאַר אַ לעצט פּרויעקט, איר וואָלט מאַכן עס קוקן בעסער. אבער אַז ס 'נאָר אַ פּשוט בייַשפּיל פון ווי איר טאָן די באַקומען בעטן. און אויב מיר קוקן אין די פאַקטיש קאָד, איך בין געסינג, איך בין שיין זיכער עס ס 'נאָך שיין פיל די זעלבע. אָה, איך Forgot צו בייַטן עס צו אַ שטריקל, אַז ס עס. ניין, עס ס 'נאָך נישט ארבעטן. ראַגאַרדלאַס, דאָ ס דער פאַקטיש געענדיקט קאָד פֿאַר וואָס דאָס זאָל קוקן ווי, און עס טוט די זעלבע זאַך ווי וואָס איך נאָר ימפּלאַמענאַד. ווען איר גיט אויף די קנעפּל, עס ניצט באַקומען דזשסאָן צו אויטאָמאַטיש פּאַרס די דאַטן. עס נעמט די דאַטן צוריק פון אים און לופּס דורך די גאנצע מענגע און פּרינץ אויס די - וועלכער ס פֿאַר לאָנטש הייַנט, די נאָמען פון עס, און אַפּפּענדס אַ שורה ברעכן נאָך יעדער שורה. אַז ס ווי איר נוצן דעם באַקומען פונקציאָנירן. איר קענען אויך נוצן פּאָסטן, וואָס איך האט נישט האָבן צייַט צו שרייַבן אַרויף אַ בייַשפּיל פֿאַר עס, אָבער מיר קענען קוקן אין די דאַקיומענטיישאַן. אויב איר קוק בייַ jquery.post, איר קענען זען אַז עס ס 'כּמעט די זעלבע זאַך. איר האָבן אַ URL, אָבער אַנשטאָט פון גייט פארביי פּאַראַמעטערס ניצן - נאָר פּאַטינג זיי אין די שטריקל פֿאַר די URL זיך, איר האָבן צו פאָרן אין דעם דאַטן בייַטעוודיק וואָס איז בייסיקלי אַ מענגע, אַ ווערטערבוך וואָס מאַפּס פּאַראַמעטערס צו וואַלועס. איר פאָרן אַז אין, און אַז סענדז זיי אין ניצן אַ פּאָסטן. און אַמאָל איר האָבן וואָס, דעמאָלט איר קענען האָבן אַ הצלחה פֿונקציע אַז עקסאַקיוץ ווען די דאַטן קומט צוריק. אַנדערש, עס ס 'פּונקט דער זעלביקער. אזוי ניצן פּאָסטן, איר זאל וועלן צו נוצן פּאָסטן, למשל, אויב איר האָבן אַ אַרייַנשרייַב פאָרעם איר לאָזן מענטשן אַרייַנשרייַב פּאַסווערדז אין עס, און שיקן די פּאַסווערדז אַוועק צו דיין צוריק-סוף שריפט, צו טשעק אין די דאַטאַבאַסע צי אַז באַניצער איז גילטיק אָדער נישט. איר קענען טאָן אַז אַלע ניצן דזשקווערי אַנשטאָט פון בעת ​​צו דערפרישן די בלאַט אין אַלע. אַז ס ווי איך ימפּלאַמענאַד אין די בלאָג וואָס איך אנטפלעקט איר פריער. אויב מיר גיין צו די סוף טויער און קלאָץ אויס, קלאָץ אויס, קלאָץ אויס טוט נישט אַרבעטן. נו, לאָזן מיר נאָר עפענען עס אַרויף אין אַ נייַ פֿענצטער. דאָ עס איז אַ פּאַראָל, און איך איז געגאנגען צו דרוקן אין עפּעס טראַפ. עס טוט נישט אַרבעט, אָבער איר קענען זען אַז מיר האבן ניט פאקטיש האָבן צו דערפרישן די בלאַט אין אַלע. די קאָד, אויב איר ווילן צו קוקן בייַ אים, איז אַלע בנימצא אין דאָ. אזוי די קאָד איך געשריבן לעצטע יאָר אַמאָל. ווי איר קענען זען דאָ, מיר ניטאָ שיקט אַ פּאָסטן בעטן. איך האָבן אַ טעקע גערופן לאָגינ.פפּ אין די צוריק סוף, וואָס טשעקס אויב די Password איז גילטיק. די פּאַראַמעטערס מיר פאָרן אין זענען Password, מאַפּט צו די אַרייַנשרייַב אַז ס אין דעם אַרייַנשרייַב קעסטל דערווייַל. און ווען די דאַטן קומט צוריק, מיר טשעק. אויב די דאַטן איז פאַלש, דעמאָלט מיר זאָגן פאַלש Password, רוק עס אַראָפּ, און נאָר מאַכן עס פאַרשווינדן נאָך וואָס. אַנדערש, מיר לאָדן דער אַדמין בלאַט. און דאָס איז געווען אַלע געטאן ניצן דזשסאָן. אין דעם פילע שורות פון קאָד, איר קענען נאָר פאָרן די דאַטן צו די צוריק סוף, טשעק צי עס ס ריכטיק, טשעק צי איר לאָגד אין ריכטיק, און פאקטיש רעספּאָנד צו עס, רידערעקטינג דעם מענטש צו די ריכטיק בלאַט אָדער נישט לעטינג זיי קלאָץ אין און טעלינג זיי אַז זיי האבן אַ פאַלש Password. אזוי אַז ס 'אַ בייַשפּיל פון ווי איר קען נוצן דזשקווערי פּאָסטן צו שיקן אַ פּאָסטן בעטן צו דיין צוריק סוף, קאָנטראָלירונג צי עמעצער ס לאָגד אין ריכטיק. אַלע רעכט, אַזוי אַז ס אַלע די ביישפילן איך געהאט, און אַלע די שטאָפּן איך געוואלט צו דעקן. די ביסט די הויפּט זאכן וואָס דזשקווערי אַלאַוז איר צו טאָן: אויסקלייַבן עלעמענטן, מאָדיפיצירן זיי ניצן דאַם מאַניפּיאַליישאַן, איר קענען לייגן יפעקס, אַקטאַווייט זאכן אויף זיכער געשעענישן, און אויך טאָן AJAX ריקוועס זייער סימלאַסלי און לייכט. אזוי דאַנקען איר פֿאַר קומען אָדער וואַטשינג, און אויב איר האָט קיין שאלות, נאָר לאָזן מיר וויסן. יאָ? [תּלמיד] צוריק ווען איר אנטפלעקט, איר האט דזשסאָן נאָך דעם פּאָסטן בעטן אין ציטירט, און איך איז נאָר וואַנדערינג וואָס וואָס האבן. >> יאָ, איך זען. די קשיא איז אַז, אין די בייַשפּיל איך נאָר געוויזן, דאָרט איז געווען די וואָרט דזשסאָן אין ציטירט אַרום דער - איך וועט נאָר ציען עס אַרויף ווידער - אַרום דעם פּאָסטן פונקציאָנירן. איך בין נאָר פּולינג עס אַרויף צו ווייַזן. אזוי דאָ ס דעם פּאָסטן בעטן, און דאָרט ס דעם דזשסאָן אין ציטירט. אַז נאָר דיפיינז וואָס מיר ניטאָ יקספּעקטינג דער רעזולטאַט צו זייַן. אזוי אויב מיר פאָרן אין דזשסאָן ווי די געריכט דאַטן טיפּ, עס ס 'נישט אַ פאָדערונג, אָבער אויב מיר פאָרן עס אין, דעריבער די דאַטן וועט אויטאָמאַטיש זייַן פּאַרסט ווי דזשסאָן. אזוי מיר טאָן ניט האָבן צו רופן די דזשסאָן פּאַרס פונקציאָנירן אויף אים, עס וועט נאָר פּאַסירן אויטאָמאַטיש. און אויב איר נעמען אַ קוק אין די דאַקיומענטיישאַן פֿאַר פּאָסטן, עס איז דעם דאַטן טיפּ בייַטעוודיק, דער טיפּ פון דאַטן געריכט פון די סערווער. עס דיפאָלץ צו אַ ינטעליגענט טרעפן וואָס קענען זייַן פאַלש, אַזוי איר קענען לאָזן עס פּוסט, אָבער עס ס נאָר דער טיפּ פון דאַטן אין קאָודינג אַז איר ניטאָ ניצן, צי עס ס דזשסאָן אָדער קסמל אָדער עפּעס אַנדערש. קיין אנדערע שאלות? כל רעכט. אויב איר האָט קיין אנדערע שאלות, פילן פֿרייַ צו Email מיר בייַ vshekhawat@college.harvard.edu, און די סליידז און קאָד זאָל זייַן פאַראַנען אָנליין שיין באַלד. גוט גליק מיט דיין לעצט פראיעקטן, האָפֿן איר נוצן דזשקווערי. [CS50.TV]