Переписать событие прокрутки или ложно запустить событие прокрутки - PullRequest
0 голосов
/ 07 мая 2020

Может ли кто-нибудь помочь мне перекодировать некоторые из сценариев aos. js? Короче говоря, я пытаюсь заставить aos работать в iFrame. Я использую iframeResizer. js, и я могу отправить высоту области просмотра с родительской страницы в iFrame. Я также могу отправить смещение прокрутки. Следующее, что мне нужно выяснить, это как использовать эти данные в aos. js. Пока мне удалось изменить что-либо в aos. js, которое ранее использовало высоту и положение прокрутки окна, чтобы вместо этого использовать высоту и положение прокрутки родительской страницы, что выглядит многообещающим. Если раньше все анимации aos воспроизводились сразу после загрузки страницы, теперь они ждут, когда сработает событие прокрутки. Дело в том, что внутри aos. js есть код, который я просто не могу обойти, чтобы переписать его, чтобы запустить прокрутку при обратном вызове из iframeResizer. js. Я пытался запустить эти анимации на основе прокрутки в iFrame, что кажется вечностью, поэтому любая помощь будет принята с благодарностью.

Итак, из того, что я вижу, в aos. js есть строка с 3 слушателями событий, последний из которых является событием прокрутки. Похоже на это, но с некоторыми странными параметрами в скобках, которых я никогда раньше не видел.

window.addEventListener("scroll", (0, u.default)(function() {}

Я пробовал написать свою собственную функцию, но не понимаю что такое часть (0, u.default) или как ее использовать. К сожалению, весь сценарий aos. js намного выше моего уровня JavaScript. Если кто-нибудь может посоветовать мне, как я могу запустить тот же прослушиватель событий, я был бы очень признателен!

Другой вариант, который я пытался, - подделать событие прокрутки ... позиция изменяется и отправляется от родителя в мой iframe, могу ли я подделать событие прокрутки ... но мне не повезло. Возможно ли это вообще?

Я думаю, что на данный момент достаточно информации, но если кто-то хочет помочь и хочет большего, пожалуйста, просто кричите.

Спасибо

...