Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.01.2013, 23:35
Кандидат Javascript-наук
Отправить личное сообщение для Bebarr Swallow Посмотреть профиль Найти все сообщения от Bebarr Swallow
 
Регистрация: 17.03.2011
Сообщений: 113

innerText вместо "\n" создает "<br>"
function createTag(tag, attributes, inner_text) {
  var result = document.createElement(tag);

  for(var x in attributes) {
    result.setAttribute(x, attributes[x]);
  }

  result.innerText = inner_text;

  return result;
}

var a = createTag("style", {}, "#ads {\n  display: none;\n}\n"
  + ".adv {\n  display: none;\n}\n"
  + ".more {\n  display: none;\n}");

console.log(a);


Результат:
<style>#ads {<br>  display: none !important;<br>}<br>.adv {<br>  display: none !important;<br>}<br>.more {<br>  display: none !important;<br>}</style>


Практической пользы от расстановки переносов я не имею, просто заинтересовала ситуация. Почему так происходит и как исправить?
Ответить с цитированием
  #2 (permalink)  
Старый 13.01.2013, 23:40
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

result.innerHTML = inner_text;
Ответить с цитированием
  #3 (permalink)  
Старый 13.01.2013, 23:50
Кандидат Javascript-наук
Отправить личное сообщение для Bebarr Swallow Посмотреть профиль Найти все сообщения от Bebarr Swallow
 
Регистрация: 17.03.2011
Сообщений: 113

Сообщение от Deff Посмотреть сообщение
result.innerHTML = inner_text;
Пробовал, помогло. Но интересно почему же innerText создает "<br>"?
Ответить с цитированием
  #4 (permalink)  
Старый 14.01.2013, 16:02
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А почему он не должен этого делать? Это нестандартное свойство, его поведение нигде не описано, но как я понимаю, конвертация nl2br - это одна из фич этого свойства, и работает кажется во всех браузерах, поддерживающих innerText (кажется это все браузеры кроме Firefox)
Ответить с цитированием
  #5 (permalink)  
Старый 14.01.2013, 16:03
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

textContent не должен ничего создавать кстати.
Ответить с цитированием
  #6 (permalink)  
Старый 14.01.2013, 16:14
Профессор
Отправить личное сообщение для Vampir3 Посмотреть профиль Найти все сообщения от Vampir3
 
Регистрация: 06.12.2011
Сообщений: 172

+, textContent юзаю
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск