iframe с указателями-событиями: нет; но с div внутри, у которого есть события указателя: auto;
Можно иметь внешний div с указателями-событиями: нет; и другой div внутри него с указателями-событиями: auto;. Внешний div будет прозрачным для событий click (то есть он не будет реагировать на события click, но основные HTML-элементы управления будут), а внутренний будет.
Однако теперь у меня есть сценарий, в котором мне нужно сделать то же самое с помощью iframe, но он не работает. Я устанавливаю события указателя: нет; в iframe, но тогда внутренние div, которые должны быть активными, даже если они имеют события указателя: auto; задавать.
Здесь есть еще один похожий вопрос, но он закрыт за то, что он не по теме. Я не понимаю почему. Это очень актуальный вопрос HTML / CSS.
1 ответ
iFrames обрабатываются как единая часть содержимого, а не как часть страницы, на которой находится iFrame, поэтому нет, это невозможно.
Рендер и DOM рассматривают iFrame как черный ящик. Именно поэтому вы не можете, например, запускать обычные методы, такие как iFrameElement.childNodes[0]
и аналогичные (и получить <html>
из кадра). Ты должен бежать iFrameElement.contentWindow.document.documentElement
или что-то типа того. Это совершенно отдельный контекст просмотра.