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

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

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

JS קבלת נתונים על תכונות של טקסט מסומן

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

    אתן כדוגמא את הטקסט עם הhtml שבשורה הבאה:

    <span style="font-size: 48pt!important;">כתב גדול <span style="font-size: 24pt!important;">כתב בינוני</span> <span style="font-size: 11pt!important;">כתב קטן</span></span>
    

    אני מעוניין לקבל את הנתון מהו גודל הכתב שאסמן עם העכבר. כתבתי לצורך זה את הקוד להלן. הבעיה בו שהוא תמיד בוחר את התגית הכי פנימית מה שאומר שגם אם אסמן את המילים "כתב גדול" הוא יתן לי את הנתון 11pt.

    function gText(e) {
      var elmnt = document.activeElement.shadowRoot.querySelectorAll("span");
      var sizes = ["גודל כתב"];
      var fonts = [" גופן "];
      elmnt.forEach((sel) => {
        sizeval = sel.style["font-size"].replace("pt", "");
        if (sizeval != "") {
          sizes.unshift(sizeval);
          console.log(sizes);
          // } else {
            //   document.getElementById("size").textContent = "גודל כתב";
          }
          document.getElementById("size").textContent = sizes[0];
          sizes = ["גודל כתב"];
      });
      elmnt.forEach((sel) => {
        fontval = sel.style["font-family"]; 
          if (fontval != "") {
            fonts.unshift(fontval);
            // } else {
              //   document.getElementById("font").textContent = "גופן";
          }    
        document.getElementById("font").textContent = fonts[0].slice(1, -1);
        fonts = [" גופן "];
      });
    }
    
    document.onmouseup = gText;
    
    

    ניתן לקבל את התוכנה לזכירת הלימוד בכתובת מייל 3422973@gmail.com
    הודעה זמנית: לעת עתה אנו מנסים לארגן מסע פרסום לתוכנה כדי שכלל הלומדים יוכלו לחזור בקלות על לימודם. תרומות בקישור: https://nedar.im/lGvN

    חגיח תגובה 1 תגובה אחרונה
    0
    • ה הפצת אנקי

      אתן כדוגמא את הטקסט עם הhtml שבשורה הבאה:

      <span style="font-size: 48pt!important;">כתב גדול <span style="font-size: 24pt!important;">כתב בינוני</span> <span style="font-size: 11pt!important;">כתב קטן</span></span>
      

      אני מעוניין לקבל את הנתון מהו גודל הכתב שאסמן עם העכבר. כתבתי לצורך זה את הקוד להלן. הבעיה בו שהוא תמיד בוחר את התגית הכי פנימית מה שאומר שגם אם אסמן את המילים "כתב גדול" הוא יתן לי את הנתון 11pt.

      function gText(e) {
        var elmnt = document.activeElement.shadowRoot.querySelectorAll("span");
        var sizes = ["גודל כתב"];
        var fonts = [" גופן "];
        elmnt.forEach((sel) => {
          sizeval = sel.style["font-size"].replace("pt", "");
          if (sizeval != "") {
            sizes.unshift(sizeval);
            console.log(sizes);
            // } else {
              //   document.getElementById("size").textContent = "גודל כתב";
            }
            document.getElementById("size").textContent = sizes[0];
            sizes = ["גודל כתב"];
        });
        elmnt.forEach((sel) => {
          fontval = sel.style["font-family"]; 
            if (fontval != "") {
              fonts.unshift(fontval);
              // } else {
                //   document.getElementById("font").textContent = "גופן";
            }    
          document.getElementById("font").textContent = fonts[0].slice(1, -1);
          fonts = [" גופן "];
        });
      }
      
      document.onmouseup = gText;
      
      
      חגיח מנותק
      חגיח מנותק
      חגי
      כתב ב נערך לאחרונה על ידי
      #2

      @הפצת-אנקי
      אני יכול להציע פיתרון חלופי?

      getComputedStyle(document.getSelection().baseNode.parentElement)['font-size']
      

      אם זה לא פיתרון למקרה שלך, אשמח לנסות לעזור.
      פשוט נראה לי שהפיתרון שלך זה לא הכיוון הנכון.

      ה תגובה 1 תגובה אחרונה
      4
      • חגיח חגי

        @הפצת-אנקי
        אני יכול להציע פיתרון חלופי?

        getComputedStyle(document.getSelection().baseNode.parentElement)['font-size']
        

        אם זה לא פיתרון למקרה שלך, אשמח לנסות לעזור.
        פשוט נראה לי שהפיתרון שלך זה לא הכיוון הנכון.

        ה מנותק
        ה מנותק
        הפצת אנקי
        כתב ב נערך לאחרונה על ידי
        #3

        @חגי עבד עם שינוי קטן שרלוונטי למה שאני צריך (אנקי).

          var sz = getComputedStyle(
            document.activeElement.shadowRoot.getSelection().baseNode.parentElement
          ).getPropertyValue("font-size");
          console.log(sz.slice(0, -2)*72/96);
        

        ניתן לקבל את התוכנה לזכירת הלימוד בכתובת מייל 3422973@gmail.com
        הודעה זמנית: לעת עתה אנו מנסים לארגן מסע פרסום לתוכנה כדי שכלל הלומדים יוכלו לחזור בקלות על לימודם. תרומות בקישור: https://nedar.im/lGvN

        תגובה 1 תגובה אחרונה
        2
        • ה מנותק
          ה מנותק
          הפצת אנקי
          כתב ב נערך לאחרונה על ידי
          #4

          שמתי לב שאם אני בוחר טקסט שחלקו מוגדר לגודל אחד וחלקו השני לגודל אחר הוא בוחר את הגודל שבו התחלתי לסמן. יש דרך לגרום לו להחזיר את כל הערכים הרלוונטיים/ערך ריק?

          ניתן לקבל את התוכנה לזכירת הלימוד בכתובת מייל 3422973@gmail.com
          הודעה זמנית: לעת עתה אנו מנסים לארגן מסע פרסום לתוכנה כדי שכלל הלומדים יוכלו לחזור בקלות על לימודם. תרומות בקישור: https://nedar.im/lGvN

          גמליאלג תגובה 1 תגובה אחרונה
          0
          • ה הפצת אנקי

            שמתי לב שאם אני בוחר טקסט שחלקו מוגדר לגודל אחד וחלקו השני לגודל אחר הוא בוחר את הגודל שבו התחלתי לסמן. יש דרך לגרום לו להחזיר את כל הערכים הרלוונטיים/ערך ריק?

            גמליאלג מנותק
            גמליאלג מנותק
            גמליאל
            כתב ב נערך לאחרונה על ידי
            #5

            @הפצת-אנקי
            אתה השתמשת בbaseNode שמחזיר את תחילת הבחירה.
            אתה יכול להשתמש בdegreeNode שמחזיר את סוף הבחירה.

            ה תגובה 1 תגובה אחרונה
            1
            • גמליאלג גמליאל

              @הפצת-אנקי
              אתה השתמשת בbaseNode שמחזיר את תחילת הבחירה.
              אתה יכול להשתמש בdegreeNode שמחזיר את סוף הבחירה.

              ה מנותק
              ה מנותק
              הפצת אנקי
              כתב ב נערך לאחרונה על ידי הפצת אנקי
              #6

              @גמליאל כתב בJS קבלת נתונים על תכונות של טקסט מסומן:

              בdegreeNode

              יש דרך למקרה שההתחלה והסוף זהים ובאמצע יש שוני?
              (אולי ליצור טווח בין ההתחלה לסוף עם לולאה שרצה על הכל? )

              ניתן לקבל את התוכנה לזכירת הלימוד בכתובת מייל 3422973@gmail.com
              הודעה זמנית: לעת עתה אנו מנסים לארגן מסע פרסום לתוכנה כדי שכלל הלומדים יוכלו לחזור בקלות על לימודם. תרומות בקישור: https://nedar.im/lGvN

              תגובה 1 תגובה אחרונה
              0
              • חגיח מנותק
                חגיח מנותק
                חגי
                כתב ב נערך לאחרונה על ידי
                #7

                כדי למנוע מצב של בעיית XY, אולי תכתוב מה בדיוק הצורך שלך, ולא מה אתה מנסה לעשות?
                אולי יש פתרונות אחרים שיוכלו להציע לך.

                ה תגובה 1 תגובה אחרונה
                4
                • חגיח חגי

                  כדי למנוע מצב של בעיית XY, אולי תכתוב מה בדיוק הצורך שלך, ולא מה אתה מנסה לעשות?
                  אולי יש פתרונות אחרים שיוכלו להציע לך.

                  ה מנותק
                  ה מנותק
                  הפצת אנקי
                  כתב ב נערך לאחרונה על ידי
                  #8

                  @חגי יש לי כפתור שפותח תפריט לשינוי גודל טקסט. אני רוצה שכאשר אסמן טקסט יהיה כתוב על הכפתור מהו גודל הטקסט הנוכחי בpt (לעיל עשיתי המרה מpx אם שמת לב..)
                  36c534ff-f194-4d52-bfc5-b375d889f256-image.png

                  ניתן לקבל את התוכנה לזכירת הלימוד בכתובת מייל 3422973@gmail.com
                  הודעה זמנית: לעת עתה אנו מנסים לארגן מסע פרסום לתוכנה כדי שכלל הלומדים יוכלו לחזור בקלות על לימודם. תרומות בקישור: https://nedar.im/lGvN

                  גמליאלג תגובה 1 תגובה אחרונה
                  0
                  • ה הפצת אנקי

                    @חגי יש לי כפתור שפותח תפריט לשינוי גודל טקסט. אני רוצה שכאשר אסמן טקסט יהיה כתוב על הכפתור מהו גודל הטקסט הנוכחי בpt (לעיל עשיתי המרה מpx אם שמת לב..)
                    36c534ff-f194-4d52-bfc5-b375d889f256-image.png

                    גמליאלג מנותק
                    גמליאלג מנותק
                    גמליאל
                    כתב ב נערך לאחרונה על ידי
                    #9

                    @הפצת-אנקי כתב בJS קבלת נתונים על תכונות של טקסט מסומן:

                    יש דרך למקרה שההתחלה והסוף זהים ובאמצע יש שוני?

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

                    ומה אתה רוצה שיופיע בחלון כש'ההתחלה והסוף זהים ובאמצע יש שוני'?

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

                    ה תגובה 1 תגובה אחרונה
                    4
                    • גמליאלג גמליאל

                      @הפצת-אנקי כתב בJS קבלת נתונים על תכונות של טקסט מסומן:

                      יש דרך למקרה שההתחלה והסוף זהים ובאמצע יש שוני?

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

                      ומה אתה רוצה שיופיע בחלון כש'ההתחלה והסוף זהים ובאמצע יש שוני'?

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

                      ה מנותק
                      ה מנותק
                      הפצת אנקי
                      כתב ב נערך לאחרונה על ידי הפצת אנקי
                      #10

                      @גמליאל ריק יכול להיות טוב. אולי יותר טוב שיוצג טווח משהו כמו 10-22.

                      ניתן לקבל את התוכנה לזכירת הלימוד בכתובת מייל 3422973@gmail.com
                      הודעה זמנית: לעת עתה אנו מנסים לארגן מסע פרסום לתוכנה כדי שכלל הלומדים יוכלו לחזור בקלות על לימודם. תרומות בקישור: https://nedar.im/lGvN

                      dovidD תגובה 1 תגובה אחרונה
                      0
                      • ה הפצת אנקי

                        @גמליאל ריק יכול להיות טוב. אולי יותר טוב שיוצג טווח משהו כמו 10-22.

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

                        @הפצת-אנקי זה נראה מסובך.
                        קל לגשת לראשון ולאחרון (או לאב המשותף לכולם), אבל ייתכן ששניהם אותו גדול ובאמצע יש גודל שונה.
                        אני חושב שבלי קוד מסורבל קשה לדעת (שמחפש את הטקסט בלולאה בצאצאי האב ומחליט לפי זה אלו אלמנטים נכללו בבחירה).
                        מראה מקום: https://javascript.info/selection-range

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


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

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

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