Я пытаюсь добавить элемент classList
в среде, где у меня нет доступного синтаксиса распространения. Использование apply
завершается с ошибкой TypeError:
const classes = 'red blue';
const tag = document.querySelector('#tag')
const list = classes.split(/\s/);
console.log(list); // ['red', 'blue']
tag.classList.add.apply(tag, list); // Error
tag.classList.add('green'); // doesn't happen
.blue {
background: blue
}
.red {
color: red;
}
.green {
border: 3px double green;
}
<p id="tag">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugiat nam nihil sed, dicta, maxime, atque nulla voluptatibus necessitatibus aliquam quasi inventore voluptas dolore labore ratione officia! Rerum vel, similique perferendis?</p>
Uncaught TypeError: Illegal invocation
Я должен что-то делать неправильно, потому что это работает с распространением. В чем проблема с этим вызовом classList.add
?