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

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

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

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

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

    אתן כדוגמא את הטקסט עם ה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
                      • ה הפצת אנקי התייחס לנושא זה ב

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

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

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

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


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

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

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