דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. איך מכניסים פונקציה בתוך קלאס של אלמנט

איך מכניסים פונקציה בתוך קלאס של אלמנט

מתוזמן נעוץ נעול הועבר תכנות
15 פוסטים 4 כותבים 1.4k צפיות 2 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD
    dovidD
    dovid
    ניהול
    כתב ב נערך לאחרונה על ידי
    #2

    ראשית לא הבנתי, שנית תסביר גם למה אתה נצרך לכך.

    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
    תגובה 1 תגובה אחרונה
    0
    • chagoldC
      chagoldC
      chagold
      כתב ב נערך לאחרונה על ידי
      #3

      אני רוצה לממש את זה, אבל אני לא רוצה שכשהוא טוען את הדף הראשון האתר הוא יריץ אותו (כי למה להכביד על טעינת האתר מראש, אם אפשר לדחות את הטעינה למתי שהאלמנט יהיה בלייב. בנוסף לכך שזה גם לא יעזור אם הJS ירוץ לפני שהאלמנט קיים).
      לכן אני צריך שרק אחרי שהdiv קיים הjs ירוץ.

      A תגובה 1 תגובה אחרונה
      0
      • dovidD
        dovidD
        dovid
        ניהול
        כתב ב נערך לאחרונה על ידי dovid
        #4

        אם הנקודה היא לחסוך את זמן הטעינה, אז עליך למצוא איך בAPI של select2 עושים טעינה עצילה. זה צורך די בנאלי ואין סיבה שזה לא ממומש עד כמה שזה נצרך.
        אני משער שהבעיה היא בעיקר מה שכתבת שהלאמנט פשוט לא קיים והוא נוצר ע"י מחלקה אחרת באופן דינמי.
        זה בהחלט לא קל. דרך פשוטה (אבל גם מלוכלכת) זה לכלול בdiv עוטף את הסקריפט עצמו - זה יכול להיות נטו קריאה לפונקציה:

        <div>
          <input type="hidden" id="tags" value="tag1,tag2" style="width: 400px;" />
          <script>initNewInput("tags");" </script>
        </div>
        

        במידה וכך אתה עושה עליך לוודא שהסקריפט יתייחס דוקא לinput הספציפי שלצידו (ע"י שינוי הID והפרמטר של initNewInput בהתאמה) כי אחרת במידה ויש יותר מאחד בדף הוא יקבל דאבל אירועים ויהיה שמח.

        יש דרך יותר טריקית שלמדתי פעם מ @magicode זה לשים אלמנט img (עם תמונה ריקה בbase64) ולשים אירוע onLoad ואז יש לך ביד את האלמנט הקורא בthis ממנו אתה יכול לנווט ל"אחיו" הinput ולהצמיד לו אישית את האירוע.

        • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
        • בכל נושא אפשר ליצור קשר dovid@tchumim.com
        תגובה 1 תגובה אחרונה
        2
        • chagoldC chagold

          אני רוצה לממש את זה, אבל אני לא רוצה שכשהוא טוען את הדף הראשון האתר הוא יריץ אותו (כי למה להכביד על טעינת האתר מראש, אם אפשר לדחות את הטעינה למתי שהאלמנט יהיה בלייב. בנוסף לכך שזה גם לא יעזור אם הJS ירוץ לפני שהאלמנט קיים).
          לכן אני צריך שרק אחרי שהdiv קיים הjs ירוץ.

          A
          A
          aaron
          כתב ב נערך לאחרונה על ידי
          #5

          @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

          אבל אני לא רוצה שכשהוא טוען את הדף הראשון האתר הוא יריץ אותו

          מה הכוונה יריץ אותו? את הטעינה של הקובץ JS או את ההרצה של הפונקציה select2() ?
          מה לגבי

          $('#select2-div').ready(function(){
              //..... select2()
          })
          

          aaron.tchumim@gmail.com
          Hetzner - שרתים וירטואליים ופיזיים במחירים מעולים (קישור שותפים)

          ווצאפ API - תיעוד שירות API לא רשמי.

          chagoldC תגובה 1 תגובה אחרונה
          0
          • chagoldC
            chagoldC
            chagold
            כתב ב נערך לאחרונה על ידי
            #6

            @dovid אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

            דרך פשוטה (אבל גם מלוכלכת) זה לכלול בdiv עוטף את הסקריפט עצמו - זה יכול להיות נטו קריאה לפונקציה:

            זה לא הולך לי, כיון שהתג </script> מעיף אותי מהJS שבHTML.

            הדרך השניה, לצערי לא הבנתי את המימוש.
            תודה.

            dovidD תגובה 1 תגובה אחרונה
            0
            • chagoldC chagold

              @dovid אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

              דרך פשוטה (אבל גם מלוכלכת) זה לכלול בdiv עוטף את הסקריפט עצמו - זה יכול להיות נטו קריאה לפונקציה:

              זה לא הולך לי, כיון שהתג </script> מעיף אותי מהJS שבHTML.

              הדרך השניה, לצערי לא הבנתי את המימוש.
              תודה.

              dovidD
              dovidD
              dovid
              ניהול
              כתב ב נערך לאחרונה על ידי
              #7

              @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

              זה לא הולך לי, כיון שהתג </script> מעיף אותי מהJS שבHTML.

              לא הבנתי.

              • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
              • בכל נושא אפשר ליצור קשר dovid@tchumim.com
              chagoldC תגובה 1 תגובה אחרונה
              0
              • chagoldC chagold

                איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                תודה.

                zvizviZ
                zvizviZ
                zvizvi
                כתב ב נערך לאחרונה על ידי
                #8

                @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                תודה.

                אם הבנתי נכון את שאלתך, (ומבלי לגרוע מדברי @dovid ...)

                ng-init="function()" 
                

                https://zvizvi.xyz

                chagoldC dovidD 2 תגובות תגובה אחרונה
                2
                • zvizviZ zvizvi

                  @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                  איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                  (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                  תודה.

                  אם הבנתי נכון את שאלתך, (ומבלי לגרוע מדברי @dovid ...)

                  ng-init="function()" 
                  
                  chagoldC
                  chagoldC
                  chagold
                  כתב ב נערך לאחרונה על ידי chagold
                  #9

                  @zvizvi אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                  @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                  איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                  (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                  תודה.

                  אם הבנתי נכון את שאלתך, (ומבלי לגרוע מדברי @dovid ...)

                  ng-init="function()" 
                  

                  בדיוק. אבל אני לא באנגולר (..ן@dovid שוב הוכיח שהוא צדק ואני עדיין העקשן שלא עוזב את vue), אבל תודות לך מצאתי את זה בסטאק. אבדוק יותר מאוחר אם זה באמת מצליח...

                  תגובה 1 תגובה אחרונה
                  0
                  • dovidD dovid

                    @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                    זה לא הולך לי, כיון שהתג </script> מעיף אותי מהJS שבHTML.

                    לא הבנתי.

                    chagoldC
                    chagoldC
                    chagold
                    כתב ב נערך לאחרונה על ידי
                    #10

                    @dovid אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                    @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                    זה לא הולך לי, כיון שהתג </script> מעיף אותי מהJS שבHTML.

                    לא הבנתי.

                    מופיע לי באתר כל תוכן הקוד שכתוב לי אחרי ה </script>. זה בגלל שהתגית הזו היא תגית סגירה, והמנוע חושב שנגמר כל הסקריפט והוא לא יודע שזה רק איזו שורה קטנה שנכנסה כאן באמצע והוא צריך להמשיך לקרוא את שאר הקוד.
                    ככה
                    0_1523263850237_2a93b750-37c9-49de-8538-1aee8cc07a4a-image.png

                    dovidD תגובה 1 תגובה אחרונה
                    0
                    • A aaron

                      @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                      אבל אני לא רוצה שכשהוא טוען את הדף הראשון האתר הוא יריץ אותו

                      מה הכוונה יריץ אותו? את הטעינה של הקובץ JS או את ההרצה של הפונקציה select2() ?
                      מה לגבי

                      $('#select2-div').ready(function(){
                          //..... select2()
                      })
                      
                      chagoldC
                      chagoldC
                      chagold
                      כתב ב נערך לאחרונה על ידי
                      #11

                      @aaron אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                      @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                      אבל אני לא רוצה שכשהוא טוען את הדף הראשון האתר הוא יריץ אותו

                      מה הכוונה יריץ אותו? את הטעינה של הקובץ JS או את ההרצה של הפונקציה select2() ?
                      מה לגבי

                      $('#select2-div').ready(function(){
                          //..... select2()
                      })
                      

                      כל הפונקציה של הselect2 צריכה לרוץ רק אחרי שה-input קיים. בפועל גם הפתרון שלך רץ לי אולי אחרי הטעינה של הכל, אבל הוא לא בודק אם הוא קיים או לא כדי להריץ אותו.

                      תגובה 1 תגובה אחרונה
                      0
                      • zvizviZ zvizvi

                        @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                        איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                        (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                        תודה.

                        אם הבנתי נכון את שאלתך, (ומבלי לגרוע מדברי @dovid ...)

                        ng-init="function()" 
                        
                        dovidD
                        dovidD
                        dovid
                        ניהול
                        כתב ב נערך לאחרונה על ידי dovid
                        #12

                        @zvizvi אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                        @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                        איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                        (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                        תודה.

                        אם הבנתי נכון את שאלתך, (ומבלי לגרוע מדברי @dovid ...)

                        ng-init="function()" 
                        

                        זה לא יעבוד אם הקוד מוזרק דינמית ע"י פונקציה חיצונית. צריך compile במונחים של אנגולר 1.

                        • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                        • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                        zvizviZ תגובה 1 תגובה אחרונה
                        2
                        • dovidD dovid

                          @zvizvi אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                          @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                          איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                          (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                          תודה.

                          אם הבנתי נכון את שאלתך, (ומבלי לגרוע מדברי @dovid ...)

                          ng-init="function()" 
                          

                          זה לא יעבוד אם הקוד מוזרק דינמית ע"י פונקציה חיצונית. צריך compile במונחים של אנגולר 1.

                          zvizviZ
                          zvizviZ
                          zvizvi
                          כתב ב נערך לאחרונה על ידי
                          #13

                          @dovid אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                          @zvizvi אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                          @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                          איך עושים DIV שהקלאס שלו יריץ פונקציה ?
                          (אפשרי גם שאירוע אחר עליו, שירוץ רק אחרי שהבינדינג יעלה את האובייקט ל-HTML, אבל נראה לי שהראשון הוא הנכון)?

                          תודה.

                          אם הבנתי נכון את שאלתך, (ומבלי לגרוע מדברי @dovid ...)

                          ng-init="function()" 
                          

                          זה לא יעבוד עם הקוד מוזרק דינמית ע"י פונקציה חיצונית. צריך compile במונחים של אנגולר 1.

                          לפעמים $scope.$apply() לבד יספיק.

                          https://zvizvi.xyz

                          תגובה 1 תגובה אחרונה
                          1
                          • chagoldC chagold

                            @dovid אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                            @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                            זה לא הולך לי, כיון שהתג </script> מעיף אותי מהJS שבHTML.

                            לא הבנתי.

                            מופיע לי באתר כל תוכן הקוד שכתוב לי אחרי ה </script>. זה בגלל שהתגית הזו היא תגית סגירה, והמנוע חושב שנגמר כל הסקריפט והוא לא יודע שזה רק איזו שורה קטנה שנכנסה כאן באמצע והוא צריך להמשיך לקרוא את שאר הקוד.
                            ככה
                            0_1523263850237_2a93b750-37c9-49de-8538-1aee8cc07a4a-image.png

                            dovidD
                            dovidD
                            dovid
                            ניהול
                            כתב ב נערך לאחרונה על ידי dovid
                            #14

                            @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                            @dovid אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                            @chagold אמר באיך מכניסים פונקציה בתוך קלאס של אלמנט:

                            זה לא הולך לי, כיון שהתג </script> מעיף אותי מהJS שבHTML.

                            לא הבנתי.

                            מופיע לי באתר כל תוכן הקוד שכתוב לי אחרי ה </script>. זה בגלל שהתגית הזו היא תגית סגירה, והמנוע חושב שנגמר כל הסקריפט והוא לא יודע שזה רק איזו שורה קטנה שנכנסה כאן באמצע והוא צריך להמשיך לקרוא את שאר הקוד.
                            ככה
                            0_1523263850237_2a93b750-37c9-49de-8538-1aee8cc07a4a-image.png

                            יאהוו ממש יפה, הייתי צריך לנסות כדי להבין. אז חיפשתי באינטרנט ומצאתי פתרון ממש פשוט שהוא לפרק ולשרשר:

                            "</scr" + "ipt>
                            

                            בדוגמה שלי בכל מקרה יש כמה הזרקות לעשות אז תעשה עם הTemplate strings של ES6, תראה דוגמה שעשיתי:

                            https://plnkr.co/edit/CcR9YbiPJzagt56t1IGf?p=preview

                            • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                            • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                            תגובה 1 תגובה אחרונה
                            2
                            • chagoldC
                              chagoldC
                              chagold
                              כתב ב נערך לאחרונה על ידי chagold
                              #15

                              בסוף מצאתי פונקציה מובנית בvue.
                              https://vuejs.org/v2/guide/instance.html#Instance-Lifecycle-Hooks להרצת אירועים בכל שלבי הבינדיגים.
                              אני השתמשתי בmounted.

                              ושוב תודה רבה לכולם. אין מילים!!

                              תגובה 1 תגובה אחרונה
                              2

                              שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                              נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                              בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                              הרשמה התחברות
                              תגובה
                              • תגובה כנושא
                              התחברו כדי לפרסם תגובה
                              • מהישן לחדש
                              • מהחדש לישן
                              • הכי הרבה הצבעות


                              בא תתחבר לדף היומי!
                              • התחברות

                              • אין לך חשבון עדיין? הרשמה

                              • התחברו או הירשמו כדי לחפש.
                              • פוסט ראשון
                                פוסט אחרון
                              0
                              • דף הבית
                              • קטגוריות
                              • פוסטים אחרונים
                              • משתמשים
                              • חיפוש
                              • חוקי הפורום