Jag frågar en gång till

JavaScript

1 svar · 178 visningar · startad av Kim

Medlem sedan jan. 20007 697 inlägg
Trådstart#1

Jag använder nedanstående kod för att lägga in en text på en specifik position (där markören står) i en textarea. Detta fungerar i IE i Windows, men inte i Netscape eller på Macintosh.

Jag fick svaret från Jojoxx att det inte går, jag vill tro på honom eftersom han är väldigt kunnig, men det känns som att markering av text i en textarea borde vara en ganska så grundläggande funktion i Javascript, så jag tror att det fungerar på något sätt. Frågan är ju liksom bara hur. :o

Vore underbart om någon kan hjälpa mig.

function insertAtCaret(textArea, text) {

    if(textArea.createTextRange && textArea.caretPos) {
        caretPos = textArea.caretPos;
        caretPos.text =
          caretPos.text.charAt(caretPos.text.length  - 1) == ' ' ?
            text+ '\n ' : text + '\n';
        textArea.focus();
    } else {
        textArea.value = text;
    }
}
Medlem sedan juni 20004 308 inlägg
#2

Jag vill dementera att jag sagt att det inte går (det ska man passa sig för att säga :) ). Däremot är det mycket möjligt att det inte går i dessa webbläsare. Man kan tycka att det är en grundläggande funktion, men det är i interfacet som den är grundläggande, inte i själva scriptspråket i sig. Tillhandahåller inte interfacet den funktionalliteten är det inte mycket du kan göra.

272 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
141 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)