innerHTML/Javascript/Firefox

lesha77

<html>
<body onLoad="alert(document.getElementById('b').innerHTML)" id=b>
длинный текст с пробелами с пробелами длинный текст с пробелами с пробелами длинный текст всего сто двадцать два символа.
</body></html>
IE выводит всю строку полностью, Firefox расставляет переносы строк так, чтобы длина каждой строки не превышала 80.
как этого избежать?

lesha77

ап

korsar0156

это алерт разбивает на строки, а не иннерХТМЛ.

lesha77

и если в textarea присваивать innerhtml, то это textarea.value setter разбивает?
или если в firefox DOM inspector'е значение смотреть, то это DOM Inspector разбивает?
типа, я обычно проверяю то, что я написал, прежде чем постить.

korsar0156

а так работает
<html>
<body onLoad="document.write('<br/><br/><pre>'+document.getElementById('b').innerHTML+'</pre>')" id=b>
длинный текст с пробелами с пробелами длинный текст с пробелами с пробелами длинный текст всего сто двадцать два символа.
</body></html>

korsar0156

<html><body onload="document.getElementById('ta').value = document.getElementById('test').innerHTML;">
<div id="test">длинный текст с пробелами с пробелами длинный текст с пробелами с пробелами длинный текст всего сто двадцать два символа.</div>
<form>
<textarea cols="122" id="ta">
</textarea>
</form>
</body></html>
никто ничего ре разбивает на строчки

lesha77

выяснилось, что в каких-то случаях Firefox делает такое разбиение, в каких-то - нет.
проблема решилась обходным путём, через использование textarea, из которой уже innerHTML и забирается.

artimon

innerHTML не обязан выдавать тебе то, что ты написал. Более того, в Firefox'е он всегда выдаёт правильный, с точки зрения html текст.
Оставить комментарий
Имя или ник:
Комментарий: