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

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

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

הזרקת כפתור ב gmail

מתוזמן נעוץ נעול הועבר תכנות
11 פוסטים 3 כותבים 406 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • I מנותק
    I מנותק
    ivrtikshoret
    כתב ב נערך לאחרונה על ידי ivrtikshoret
    #1

    שלום וברכה
    אני מעוניין בלפתח תוסף שיוכלו לצפות בסרטונים וכן לשמוע קבצי שמע בתוך gmail ולכן אשמח לעזרתכם:
    אני ניסיתי להזריק כפתור ע"י appendChild
    וכתוב לי ב Console:
    appendChild is not a function
    מישהו יודע למה זה קורה?

    מוטי אורןמ תגובה 1 תגובה אחרונה
    1
    • מוטי אורןמ מנותק
      מוטי אורןמ מנותק
      מוטי אורן
      השיב לivrtikshoret ב נערך לאחרונה על ידי
      #2

      @ivrtikshoret אם תוכל קצת לפרט. מה בדיוק כתבת, רק appendChild? זה ממש לא אמור לעבוד לך.

      I תגובה 1 תגובה אחרונה
      1
      • I מנותק
        I מנותק
        ivrtikshoret
        השיב למוטי אורן ב נערך לאחרונה על ידי ivrtikshoret
        #3

        @מוטי-אורן
        זה מה שכתבתי:

        var x, i;
        x = document.querySelectorAll(".aQw");
        for (i = 0; i < x.length; i++) {
          var btn = document.createElement("BUTTON");
        btn.innerHTML = "CLICK ME";
        x[i].appendChild(btn);
        }
        

        ובקובץ המניפיסט כתבתי:

        {
          "name": "play video in gmail",
          "version": "1.0.0.0",
          "manifest_version": 3,
          "icons": {
            "128": "icon.png"
          },
          "action": {
            "default_popup": "popup.html"
          },
           "content_scripts": [ {
              "js": [ "play video in gmail.js" ],
              "matches": [ "https://mail.google.com/*" ],
              "run_at": "document_start"
           } ]
        }
        
        מוטי אורןמ תגובה 1 תגובה אחרונה
        1
        • מוטי אורןמ מנותק
          מוטי אורןמ מנותק
          מוטי אורן
          השיב לivrtikshoret ב נערך לאחרונה על ידי
          #4

          @ivrtikshoret מעניין למה הוא לא עובד, אצלי בהזרקה דרך הקונסול עובד מצויין. אבל מה שזכור לי שב - content_script בשדה של js אתה צריך לשים את הנתיב של הקובץ סקריפט. לא? (אני מקווה שאני צודק כי לא כל כך התעסקתי עם תוספים)

          רחמיםר I 2 תגובות תגובה אחרונה
          1
          • רחמיםר מנותק
            רחמיםר מנותק
            רחמים מורחק
            השיב למוטי אורן ב נערך לאחרונה על ידי
            #5

            @מוטי-אורן אולי בגלל רווחים בשם הקובץ JS

            I תגובה 1 תגובה אחרונה
            1
            • I מנותק
              I מנותק
              ivrtikshoret
              השיב למוטי אורן ב נערך לאחרונה על ידי
              #6

              @מוטי-אורן
              אה צודק גם אצלי עובד אם אני מריץ את זה דרך הקונסול אולי צריך לכתוב משהו במנפיסט בכדי שזה יעבוד דרך התוסף
              מישהו יודע מה צריך להוסיף?

              מוטי אורןמ תגובה 1 תגובה אחרונה
              0
              • I מנותק
                I מנותק
                ivrtikshoret
                השיב לרחמים ב נערך לאחרונה על ידי ivrtikshoret
                #7

                @רחמים
                אין שום בעיה בלשים בשם הקובץ רווחים מנסיון
                וכן אין צורך לכתוב נתיב כי הקובץ נמצא בתיקייה הראשית של הפרוייקט

                מוטי אורןמ תגובה 1 תגובה אחרונה
                1
                • מוטי אורןמ מנותק
                  מוטי אורןמ מנותק
                  מוטי אורן
                  השיב לivrtikshoret ב נערך לאחרונה על ידי מוטי אורן
                  #8

                  @ivrtikshoret אתה צריך לתת הרשאות permissions, שאני לא זוכר כל כך מה בדיוק אבל אני ינסה לבדוק את זה עוד רגע.

                  תגובה 1 תגובה אחרונה
                  1
                  • מוטי אורןמ מנותק
                    מוטי אורןמ מנותק
                    מוטי אורן
                    השיב לivrtikshoret ב נערך לאחרונה על ידי
                    #9

                    @ivrtikshoret אוקיי. דבר ראשון, אני רואה שכן צריך את הנתיב לקובץ ה-JS.

                    דבר שני, צריך להוציא את run_at מה-content_script, רק אז זה עובד (האמת שלא ברור לי עדיין למה זה ככה),

                    דבר שלישי, בסקריפט עצמו, אם נשאר בקוד שכתבת זה לא יספיק כי התפיסה של האלמנטים נעשית כשהמייל נטען, ומה שקורה זה שלוקח כמה שניות עד שבכלל האלמנט עם הקלאס "aQw" קיים בדף, והסקריפט הספיק כבר להיטען לפני.
                    אז מה שצריך לעשות זה לעשות setTimeout לכמה שניות, אבל אני חושב שזה לא חכם.
                    לדעתי עדיף להוסיף eventListener או משהו כזה, שברגע שנכנסים להודעה כל שהיא, רק אז הסקריפט ירוץ. לא יודע צריך לחשוב מה אפשר לעשות עם זה.

                    I תגובה 1 תגובה אחרונה
                    2
                    • I מנותק
                      I מנותק
                      ivrtikshoret
                      השיב למוטי אורן ב נערך לאחרונה על ידי
                      #10

                      @מוטי-אורן
                      אוקיי דבר ראשון אכן הצלחתי לעשות את זה עם setTimeout
                      ואכן מחקתי את run_at
                      אבל למה לא נכון לעבוד עם setTimeout ?

                      מוטי אורןמ תגובה 1 תגובה אחרונה
                      0
                      • מוטי אורןמ מנותק
                        מוטי אורןמ מנותק
                        מוטי אורן
                        השיב לivrtikshoret ב נערך לאחרונה על ידי
                        #11

                        @ivrtikshoret אמר בהזרקת כפתור ב gmail:

                        אבל למה לא נכון לעבוד עם setTimeout ?

                        כך נראה לי מכמה סיבות. סיבה א': אם לצורך העניין הגדרת את ה-setTimeout ל-3 שניות ויבוא מישהו שהאינטרנט שלו איטי ולוקח למייל שלו 10 שניות לעלות, במקרה כזה זה לא יעבוד.
                        ואם בכל זאת תעשה setTimeout של 15 שניות לצורך העניין למקרה הכי קיצוני (שעדיין אני חושב שיכול להיות יותר מזה), אז משתמש קלאסי יצטרך לחכות עד שהתוסף שלך יעבוד.
                        סיבה ב': מה קורה עם שמת setTimeout אפילו של 2 דקות, שזה אמור לעבוד בכל מקרה (כמובן שהמשתמש ייצטרך קצת להתייבש מול המסך), ולקח למשתמש 10 דקות עד שהוא נכנס להודעה שיש בה סרטון, שאז ה-setTimeout כבר מזמן לא פעיל.
                        וכמובן מה יעשה אותו משתמש מסכן אם הוא בכל זאת נכנס מיד להודעה שמכילה סרטון אבל יצא ממנה ונכנס להודעה ב' שגם לה מצורף סרטון.
                        סיבה ג': setTimeout בכללי לא מומלצת ומשתמשים בה רק לדברים מסויימים, כי מה שידוע לי היא פוגעת בביצועים ויוצרת בעיות זיכרון.
                        אקיצער, אם אתה רוצה לכתוב תוסף טוב לעניין הזה, תצטרך להאזין לאירוע של הכניסה להודעה, ובכל פעם כזאת להפעיל את הסקריפט הנ"ל.

                        תגובה 1 תגובה אחרונה
                        6
                        • dovidD dovid העביר נושא זה מ-תכנות ב-

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

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

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