Всем доброго вечера! У меня такая проблема. Есть задание сделать меню с ценами и чтобы их можно было добавлять и удалять из заказа. После нажатия на кнопку оплаты, у меня должны блокироваться все кнопки с позициями, чтобы ничего нельзя было добавить в заказ и удалить из него. Блокировку кнопок для добавления я сделал, а вот как мне заблокировать спец символ ×, чтобы при нажатии на него в браузере позиция не удалялась? Обычная блокировка для кнопок не подходит, он ее игнорирует. Помогите пожалуйста. Вот вырезка как я блокировал кнопки:
document.querySelector('.payed').addEventListener('click', function() {
document.querySelector('.stuffing_cheese_small').disabled = true;
document.querySelector('.stuffing_potato_small').disabled = true;
}
И вот как я создал спецсимвол через js:
var deleteIcon = document.createElement('span');
deleteIcon.className = 'delete-position';
deleteIcon.innerHTML = '×';
bindDeleteEvent(deleteIcon);
(из комментария:)
мне больше подходит вариант с removeEventListener. Только вот не могу понять, у меня есть вот такая функция:
function bindDeleteEvent(element) {
element.addEventListener('click', function(event) {
var target = event.target;
var closestPosition = target.closest('.position');
closestPosition.remove();
})
}
Как должен это должно выглядеть, вот так?:
document.removeEventListener('click', bindDeleteEvent);
Все, вот ответ на мой вопрос, если кому интересно:
Array.prototype.slice.call(document.querySelectorAll('.delete-position')).forEach(function(element) {
element.style.pointerEvents = 'none';
});
Отключить события мыши для любого элемента можно через css, только нужно понимать что оно будет унаследовано дочерними элементами
js:
deleteIcon.style.pointerEvents = 'none';
css:
.disabled {
pointer-events: none;
}
Вернуть обработку событий:
js:
deleteIcon.style.pointerEvents = 'auto';
css:
.disabled {
pointer-events: auto;
}
document.querySelectorAll(".block").forEach(b => {
b.onclick = () => console.log(b.innerHTML);
})
document.querySelectorAll(".test").forEach(b => {
b.style.pointerEvents="none";
})
.block{
width:40px;
height:40px;
background-color:wheat;
margin:10px;
display:inline-block;
line-height:40px;
text-align:center;
cursor:pointer;
transition: 0.3s;
}
div.block:hover{
background-color:red;
}
.disabled {
pointer-events:none;
}
<div class="block">1</div>
<div class="block" style="pointer-events:none">2</div>
<div class="block disabled">3</div>
<div class="block test">4</div>
<div class="block">5</div>
<div class="block test">6</div>
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Очень нужна помощь знатоковСуть в том, что есть свг иконки, при наведении они должны меня цвет (обводку, заливку)
Написал функцию, которая проверяет каждый символ строки до тех пор, пока не встретит не цифру или терминирующий нольЕсли встречается не цифра,...
Столкнулся со следующей функцией, автор использует её при записи в данных вvtk файл