@schurin
Люблю катать с гор, особенно на санках

Почему innerHTML не перерисовывает страницу в IE?

Всем привет!
По задаче мне необходимо внутри тега text изменить содержимое, затем измерить длинну и сделать кой какие расчёты, в Chrome, FF всё гуд, проблемы только в IE
Накидал пример:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
	</head>
	<body>
		<span>Span</span>
		<svg width="620" height="100">
			<text x="30" y="90" fill="#ED6E46" font-size="100" font-family="'Leckerli One', cursive">Text</text>
		</svg>
	</body>
	<script>
		var text = document.getElementsByTagName('text')[0];
		var span = document.getElementsByTagName('span')[0];

		console.log('text length1: ' + text.getComputedTextLength());
		text.innerHTML = 'NewText'
		span.innerHTML = 'NewText'
		console.log('text: ' + text.innerHTML);
		console.log('span: ' + span.innerHTML);
		console.log('text length2: ' + text.getComputedTextLength());
	</script>
</html>


в консоль IE выдаёт такие результаты:
text length1: 228.91000366210937
text: NewText
span: NewText
text length2: 228.91000366210937

при том что на странице видимо в text значение не изменилось, собственно как и длинна

чем можно заменить innerHTML?
  • Вопрос задан
  • 290 просмотров
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
S-ed
@S-ed
Комбайнёр
Для тех, кому мало textContent
https://github.com/dnozay/innersvg-polyfill
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы