07. september 2005 - 11:13Der er
7 kommentarer og 1 løsning
alternativ til createRange()
Jeg bruger et script hvor en markeret tekst forstørrers ved brug af execCommand. Den markerede tekst hentes ved: var sText = document.selection.createRange();
Jeg vil gerne springe markeringen over, da jeg altid ved hvor på siden teksten findes. Hvordan opretter jeg et handle til teksten som jeg kan sætte sText til ?
Jeg kender ikke nok til javascript til at vide hvad der er lettest (endnu)....Men dit ex. forstørrer kun een gang. Kan det ikke forstørrer fx. 5px pr gang ? Eller i steps fra nuv. størrelse og op til 7 som i execCommand ?
-- hvad ønsker du helst, en forstør/formindsk, som virker ligesom de indbyggede forntsizes fra 1 til 7 eller vil du helst have spring på et antal pixels (5 er dog et voldsomt stort tal !-)
Tjaee...med indbyggede fontsizes begrænses det jo, så med et spring på x antal pixels, med udgangspunkt i den font-str. som teksten har fra start, ville være ganske brugbart...:-)
Problemet er så at aflæse størrelsen, hvis den ikke på forhånd er angivet i pixels eller måske er sat i et stylesheet, her benytter jeg mig bare af en tilfældig default-størrelse:
<span id="minTekst" style="font-size:x-small;">Denne tekst skal forstørres</span>
<script type="text/javascript"> function enlarge(id,cSize){ var st = document.getElementById(id).style; var fSize = parseInt(st.fontSize,10); fSize = isNaN(fSize)?14:fSize; st.fontSize = fSize + cSize + "px"; } </script>
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.