Autor | Zpráva | ||
---|---|---|---|
Leo Profil |
#1 · Zasláno: 20. 2. 2006, 21:17:54
Narazil jsem na trivialni problem, ale neznam v tuto chvili trivialni reseni (nebo mi to jen nemysli). Pokud vytvarim elementy a textove uzly pres DOM (createElement a createTextNode), jakym zpusobem do kodu dostanu znakove entity, treba ? Pokud je v textovem uzlu tak se neinterpretuje jako html kod, samozrejme a takto doslova se vypise... Jsem zmateny jak lesni fcela, Leo
|
||
Oswald Profil |
#2 · Zasláno: 21. 2. 2006, 00:09:51
Řešení je zapsat to jako escape sekvenci, nbsp konkrétně jako '\u00A0' nebo tam přímo použít ten znak (nbsp na windows tuším alt + 0160). Případně použít innerHTML :)
|
||
Leo Profil |
#3 · Zasláno: 21. 2. 2006, 00:57:49
innerHTML znam, ale to nechci. Ty unicode escape sekvence jsem mezitim vygooglil taky. ale diky, Leo
|
||
habendorf Profil |
#4 · Zasláno: 21. 2. 2006, 00:58:40
createTextNode("text1\xA0text2");
|
||
habendorf Profil |
#5 · Zasláno: 21. 2. 2006, 00:59:53
no nic...
|
||
Leo Profil |
#6 · Zasláno: 21. 2. 2006, 01:43:00
:-)
|
||
peta Profil * |
#7 · Zasláno: 21. 2. 2006, 09:59:31
Leo viz habendorf Oswald
www.google.com createTextNode   createTextNode and  ! http://xpoint.ru/forums/programming/javascript/misc/thread/34265.xhtml [обр] Lynn(31/178)[досье] createTextNode('\xA0\xA0\xA0\xA0\xA0') Codigos html y javascripts para tu web http://www.creatupropiaweb.com/codigos/Mas_Codigos.htm createTextNode(String.fromCharCode(160))); Javascript document.write http://www.ozzu.com/ftopic57423.html function clear(){ var errSpan = document.getElementById('errSpan'); errSpan.replaceChild(document.createTextNode(' '), halans: features: DOM scripting http://www.halans.be/features_DOMscripting.html document.createTextNode("\u00a0"); |
||
Chamurappi Profil |
#8 · Zasláno: 21. 2. 2006, 19:58:40
A nějaké obecnější řešení Leova dotazu by nebylo? Je-li entita jeden znak a víme-li, který to zrovna je, tak je to samozřejmě v pohodě. Obsah znakové entity však může být delší než znak. V SGML/XML smí obsahovat i celé elementy nebo soubory. Co potom?
Sáhneme po DOMu a užijeme: node = document.createEntityReference(jméno entity); Prosté. Elegantní. Ale v HTML prohlížečích nefunkční :-) => obecnější řešení by opravdu nebylo. Nejobecnější je již zmíněné innerHTML. |
||
habendorf Profil |
#9 · Zasláno: 21. 2. 2006, 22:53:39
Sáhneme po DOMu a užijeme:
node = document.createEntityReference(jméno entity); Jo, není problém. node = document.createEntityReference(nbsp); Ale v HTML prohlížečích nefunkční :-) Právě :o) |
||
Leo Profil |
#10 · Zasláno: 22. 2. 2006, 01:17:46
"node = document.createEntityReference(jméno entity); "
Taky jsem to ve Flanaganovi vystrachal, i s tou poznamkou. Neumi to ani Opera 9, ktera si leccos doplnila do vzdelani... Leo |
||
peta Profil * |
#11 · Zasláno: 22. 2. 2006, 09:12:22
Chamurappi
Tak jako, jestli jsi si to prostudoval, tam jsem dal hned 4 reseni, ktere by mohli fungovat... createTextNode('\xA0\xA0\xA0\xA0\xA0') createTextNode(String.fromCharCode(160))); createTextNode(' '); createTextNode("\u00a0"); a zajimave je prave to treti, ze pouzivaji jednoduche uvozovky Samozrejme to nemam odzkousene, jen jsem udelal vypis z prvni stranky na googlu, co mi to naslo... |
||
Časová prodleva: 2 měsíce
|
|||
peta Profil * |
#12 · Zasláno: 24. 4. 2006, 10:12:01
Ok, takze sem to prave potreboval take a take jsem nenasel nic.
=== non-break space === NO createTextNode('\xA0'); NO createTextNode(String.fromCharCode(160))); NO createTextNode(' '); NO createTextNode(' '); NO createTextNode("\u00A0"); NO createEntityReference(nbsp); OK innerHTML(' '); problem je v tom, jak to interpretuje www prohlizec. On to sice zpracuje jako znak 160, ale do html kodu stejne da mezeru :) Takze asi tak :) Ke createEntityReference jsem nasel jen tolik, ze nodeType=6 (=EntityReference) neni podporovan pres HTML , ale snad by to melo jit v XML |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0