06. september 2011 - 00:44Der er
6 kommentarer og 1 løsning
WYSIWYG editor!
Hej Eksperter.
Jeg er ved at lave en wysiwyg editor i javascript.
Pt har jeg lavet følgende funtion som virker.
function addClassToSelection(className){ var sel = window.getSelection ? window.getSelection() : document.selection.createRange(); // FF : IE if(sel.getRangeAt){ // thats for FF var range = sel.getRangeAt(0); var newNode = document.createElement("span"); newNode.setAttribute('class', className); range.surroundContents(newNode); } else { //and thats for IE7 sel.pasteHTML('<span class="' + className + '">'+sel.htmlText+'</span>'); } }
Hvor className er makeBold eller unBold for at tilføje de klasser så min CSS kan ses.
Men den opfører sig meget underligt engang imellem,, hvilket jeg tror skyldes at min span elementer ikke bliver slettet igen.
Er der en nemmere måde at gøre dette på eller bare en måde der virker og sletter elementerne igen.
Eventuelt noget som tilføjer <b> istedet for <span> og fjerner dem hvis man fjerner bold fra teksten.
Det skal lige nævnes at jeg har lavet en div contenteditable og at det ikke er et textarea(selvom det ikke er muligt) :). I den div er det som kan ændres og hvis noget bliver markeret inde i den skal man kunne gøre det fed.
Har overvejet Rangy men har ikke kunnet få det til at virke.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hvis du gerne vil vide, hvordan de fungerer, downloader du en og ser, hvordan den er lavet. Ellers kan du afprøve alle mulige blindgyder, som den du er havnet i med den kode, du viser.
Brug i stedet de API'er, de store browsere har indbygget til WYSIWYG-editering
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.