Вставьте новую строку (\n) с innerHTML в пред элемент в IE, не работающем?

#include <stdlib.h>

int main()
{
    system("echo HAI");

    return 0;
}
6
задан Ciro Santilli 新疆改造中心法轮功六四事件 28 July 2014 в 16:58
поделиться

4 ответа

Это известная проблема в Internet Explorer. В качестве обходного пути вставьте элемент
вместо символа новой строки.

11
ответ дан 8 December 2019 в 16:04
поделиться

Выполнение таких действий, как element.innerHtml + = something; , обычно является плохой практикой, поскольку заставляет браузер повторно анализировать все содержимое элемента. По мере того, как вы добавляете все больше и больше данных, они становятся все медленнее и медленнее. Он также делает недействительными любые ссылки / прослушиватели событий, которые могут быть в других частях кода для его подэлементов.

Лучше использовать тег div ; что-то вроде:

<div id='out'></div>

, а затем добавляйте новые подэлементы на лету:

out_div = document.getElementById('out');

// add a new message
new_element = document.createElement('div');
new_element.textContent = "your message here";
new_element.className = "some_class"; // CSS class for changing the appearance
out_div.appendChild(new_element);
3
ответ дан 8 December 2019 в 16:04
поделиться

Измените свой код на:

function txt_out(txt) {
      out_div.innerHTML += "<br />" + txt
  }
1
ответ дан 8 December 2019 в 16:04
поделиться

Измените на

0
ответ дан 8 December 2019 в 16:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: