Первый вопрос по SO - пожалуйста, будьте осторожны.
У меня есть простое веб-приложение, которое я встраиваю в существующую веб-страницу. Приложение размещено на FireBase, и я использую iFrame на родительской странице, размещенной отдельно для отображения приложения флаттера. Изображение ниже.
веб-страница
Проблема, с которой я сталкиваюсь, заключается в том, что всякий раз, когда указатель находится над фреймом, приложение флаттера поглощает события прокрутки / колесика, даже если приложение не содержит прокручиваемого контента. Я пробовал практически все, что я могу исследовать, от js скриптов до атрибутов iframe до css. Ничего не работает jQuery также не принимается родительской страницей.
Вот код, который я пробовал на родительской веб-странице - события журнала консоли не запускаются (при использовании инструментов chrome dev в по крайней мере) поэтому я еще не пытался передать событие wheel родительскому элементу.
<style>
#app{
height: 280px;
width: 90%;
background-color: white;
margin: 0 auto;
border: none;
overflow-y: hidden;
}
</style>
<iframe id="app" src="https://fireball-apps-testimonials.firebaseapp.com/" scroll="no" scrolling="no"></iframe>
<script type="text/javascript">
var app = document.getElementById("app");
function myFunction(event) {
console.log('event triggered');
if (event) {
if (event.wheelData< 0)
{
console.log('scrolling up');
}
else if (event.wheelData> 0)
{
console.log('scrolling down');
}
}
else {
console.log('event is null');
}
}
app.addEventListener("wheel", myFunction);
</script>