У нас есть конструктор Menu
, который помогает создать графический компонент из уже существующего элемента в DOM
. Сам элемент передаём в конструтор, в виде свойства объекта {elem: document.getElementById('sweets-menu')}
. Но каким образом после выполнения конструтора наш элемент продолжает существовать? Ведь ни одной ссылки на него после выполнения конструтора не остаётся.
Элемент:
<div id="sweets-menu" class="menu">
<span class="title">Сладости</span>
<ul>
<li>Торт</li>
<li>Пончик</li>
<li>Пирожное</li>
<li>Шоколадка</li>
<li>Мороженое</li>
</ul>
</div>
Конструтор:
function Menu(options) {
var elem = options.elem;
elem.onmousedown = function() {
return false;
}
elem.onclick = function(event) {
if (event.target.closest('.title')) {
elem.classList.toggle('open');
}
};
}
// использование
var menu = new Menu({
elem: document.getElementById('sweets-menu')
});
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
https://codepenio/Don2Quixote/full/wXdoRe
Необходимо в MySQL сделать связь 2х таблиц, при этом в одной таблице должно быть несколько ключей к другой таблицеЕсли сложно объяснил, вот пример: