[javascript] pasteHTML doet het niet zoals het hoort

Pagina: 1
Acties:

  • JSchut
  • Registratie: Februari 2002
  • Laatst online: 21:47
code:
1
2
3
4
5
6
var selection = document.selection.createRange().htmlText;
var cursorPos = document.selection.createRange().duplicate();

new_HTML = "</B>" + selection + "<B>";

cursorPos.pasteHTML(new_HTML);


ik replace dus de selectie in een editable div

doet het op zich goed alleen achter <B> plakt ie zelf nog een </B>

waarom doet ie dat :? en hoe kan je het voorkomen

kvind het namelijk erg irritant en ben er al ruim een uur mee bezig :(

PSN jschut_82 | Xbox: JSchut82


  • André
  • Registratie: Maart 2002
  • Laatst online: 01-09 14:07

André

Analytics dude

IE sluit automatisch geopende tags.

  • JSchut
  • Registratie: Februari 2002
  • Laatst online: 21:47
Yogho schreef op 16 augustus 2002 @ 15:03:
IE sluit automatisch geopende tags.
ja maar er staat al een tag verder op in de tekst maar daar houd ie dus blijkbaar geen rekeing mee

is het te voorkomen

PSN jschut_82 | Xbox: JSchut82


  • André
  • Registratie: Maart 2002
  • Laatst online: 01-09 14:07

André

Analytics dude

Dan zit dat automatisch sluiten van tags waarschijnlijk in de functie pasteHTML ingebakken.

ALs je "<b>Test" in een html file zet en je bekijkt de source dan staat daar precies hetzelfde. Maar vraag je de innerHTML op dan staat er wel een sluit-tag.

  • JSchut
  • Registratie: Februari 2002
  • Laatst online: 21:47
dan is er dus nog maar 1 manier (tenminste voor zover ik me nu kan bedenken) en dat is dat ik de positie van de cursor kan opvragen van het geselecteerde gedeelte

maar dat kan niet volgens mij ;(

PSN jschut_82 | Xbox: JSchut82


  • KillR-B
  • Registratie: Mei 2002
  • Laatst online: 20-01 20:49
Er is ook nog een eenvoudige manier om geselecteerde tekst vet te maken:

var selection = document.selection.createRange();
selection.execCommand("Bold");

Voor meer mogelijkheden met execCommand check Command Identifiers
Pagina: 1