Использование css-свойства pointer-events
Это может показаться удивительным, но существует css-атрибут pointer-events, который позволяет, например, выключить все события, которые можно вызвать на элементе нажатием мышки (или пальцем):
#overlay {
pointer-events: none;
}
Да, отключить обработку событий при помощи css. Поддерживается всеми нормальными браузерами. Один из примеров использования: есть оверлэй поверх все страницы, и всё ещё хочется что бы элементы под оверлеем реагировали на нажатия как будто оверлея нет. На сайте MDM очень хорошо расписаны различные значения и особенности использования pointer-events.