JSКак использовать текущий узел вместо этого?
var menuBtn = document.getElementsByClassName('btn-block');
var lenOfMenuBtn = menuBtn.length;
for (var i = 0; i < lenOfMenuBtn; i++) {
menuBtn[i].addEventListener('click',addMenu,false);
}
function addMenu() {
addOkFlag();
//addToCart();
//removeOkFlag();
}
function addOkFlag() {
var elmnt = document.createElement('i');
elmnt.setAttribute('class','glyphicon glyphicon-ok');
this.appendChild(elmnt);
}
Ошибка является "this.appendChild не является функцией". Я хочу вызвать несколько функций, когда пользователь нажимает кнопку, поэтому я вызываю первую функцию, где я хочу добавить тег <i>
, но я не могу передать текущий узел из addEventListener, чтобы добавить этого дочернего элемента.
Вы должны установить * это * в * addOkFlag * когда она вызывается из * addMenu *, которая имеет свой * это * устанавливается на элемент, когда он вызывается обработчиком, например, используя вызов: 'addOkFlag.call (this)'. – RobG