#javascript
#javascript
Вопрос:
у меня есть этот простой код, который заменяет первый интервал на div ,
вот ЖИВЫЕ примеры :
- исходная рабочая версия: http://jsfiddle.net/SNmLJ/5 /
- тот, который с изменениями: http://jsfiddle.net/SNmLJ/6 /
—
var pn = "parentNode" , rc = "replaceChild";
var elem = document.getElementsByTagName('span')[0];
var newE = document.createElement('div');
newE.innerHTML = 'test';
elem[pn][rc](newE , elem);
код отлично работает, поэтому я попытался немного сократить код, поэтому я сделал это :
var pn = "parentNode" , rc = "replaceChild";
var newE = document.createElement('div');
newE.innerHTML = 'test';
document.getElementsByTagName('span')[0][pn][rc](newE , elem);
как вы видите, я убрал переменную «elem» и заменил значение в нижней части кода,
я не знаю, почему это не работает, но я предполагаю, что проблема связана с причиной объекта «document» в первой строке.
- единственный вопрос: почему он не работает должным образом, что здесь пошло не так?
Ответ №1:
Проблема в том, что вы забыли, что elem
переменная использовалась также в последнем параметре, переданном replaceChild
функции. Вот элемент в конце, но вы удалили определение:
document.getElementsByTagName('span')[0][pn][rc](newE ,
elem
);
Ответ №2:
Что elem
в нерабочем коде?
(Подсказка: ничего 😉