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

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

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

autocomplete רשימת הצעות להשלמה בתוך textarea ולא מחוץ לזה

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

    כתבתי קוד של השלמה אוטומטית הבעייה שהוא מביא לי את כל ההשלמות מחוץ לתיבה יש אפשרות שיביא את הנתונים מעל או מתחת לשורה בו אני נמצא עכשיו ולא מחוץ לתיבה
    מצורף הקוד:
    http://jsfiddle.net/1pLr437a/1/
    אני רוצה שזה ייראה כך:
    383d4c4b-1255-4403-a0e8-0bc74d63da8a-image.png

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

      @ivrtikshoret
      אם אתה רוצה פיתרון קל, תחליף את הtextarea ב-contenteditable, ואז תוכל לקרוא את המיקום שלו ישירות בJS, ואז אתה עושה משהו כזה:

      .autocomplete({
          open: function( event, ui ) {
          var input = $( event.target ),
              widget = input.autocomplete( "widget" ),
              style = $.extend( input.css( [
                  "font",
                  "border-left",
                  "padding-left"
              ] ), {
                  position: "absolute",
                  visibility: "hidden",
                  "padding-right": 0,
                  "border-right": 0,
                  "white-space": "pre"
              } );
          var pos = { at: {x: 0, y: 0}};
          input.autocomplete( "option", "position", pos );
          widget.position( $.extend( { of: input }, pos ) );
      },
      

      אם אתה רוצה פיתרון קשה - אז האפשרויות הן יצירה של CANVAS ולחשב עליו את הoffset(פחות מומלץ) או DIV ולשים אותם מחוץ למסך (position absolute), ואז לעצב אותם בדיוק כמו הtextarea, ואז להעתיק לשם עד הטקסט שנמצא ה-caret, ולמקם בסוף הטקסט איזשהו DIV נוסף ולקחת את הOFFSET שלו ביחס לאב, ואז לעשות שוב את התהליך שמתואר לעיל.

      עריכה:
      אתה יכול לנסות למקם contenteditable בדיוק במיקום של הtextarea ו-OPACITY 0, וכל הזמן לסנכרן אותם.

      נ.ב. אני לא בטוח שjquery ui autocomplete עובד עם contenteditable

      עריכה ל-נ.ב.
      https://stackoverflow.com/questions/13324822/autocomplete-with-contenteditable-div-instead-of-textarea-doesnt-seem-to-work

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

        @חגי
        הבעיה שאין לי אפשרות לשנות את זה כי זה נמצא באתר שלא שייך אליי

        A חגיח 2 תגובות תגובה אחרונה
        0
        • A מנותק
          A מנותק
          ayali
          השיב לivrtikshoret ב נערך לאחרונה על ידי
          #4

          @ivrtikshoret אני לא יודע בדיוק איך אפשר
          אבל נראה לי שאפשר עם TOOLIP

          I תגובה 1 תגובה אחרונה
          0
          • I מנותק
            I מנותק
            ivrtikshoret
            השיב לayali ב נערך לאחרונה על ידי
            #5

            @ayali אמר בautocomplete רשימת הצעות להשלמה בתוך textarea ולא מחוץ לזה:

            @ivrtikshoret אני לא יודע בדיוק איך אפשר
            אבל נראה לי שאפשר עם TOOLIP

            חשבתי על הרעיון הזה אבל הבעיה שיראו את זה רק כשהעכבר יחכה כמה שניות

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

              @ivrtikshoret
              אם יש לך אפשרות להריץ שם jquery, אז פשוט תשתמש בreplaceWith 🙂

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

                @חגי אמר בautocomplete רשימת הצעות להשלמה בתוך textarea ולא מחוץ לזה:

                @ivrtikshoret
                אם יש לך אפשרות להריץ שם jquery, אז פשוט תשתמש בreplaceWith 🙂

                אוקיי ומה זה יעזור לי?

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

                  @ivrtikshoret
                  להחליף את הtextarea ב-contenteditable (תוסיף גם name=textarea.name, ופרוקסי לפונקציית ()VAL. כדי שזה יעבוד בצורה שקופה)

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

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

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

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