Я создал элемент span <span id="scroll-top"></span>
, который отображает изображение со стрелкой вверху, когда пользователь прокручивает вниз и прокручивает пользователя вверх при нажатии, функция My JS отлично работает, когда вы запускаете ее как проект HTML, но angular 9 не поднимает его (я я конвертирую свой HTML-проект в angular, если вам интересно), я перепроверил свои ссылки (css и js на angular), и они в порядке, как ни странно, я использовал много функций js, но это единственный угловой 9 пропусков. В чем может быть проблема?
CSS-
scroll-top{width:40px;height:40px;z-index:99;position:fixed;bottom:100px;right:30px;display:none;cursor:pointer;background:url(../images/slider/top.png) no-repeat}
JS-
$(document).ready((function(){$(window).scroll((function(){$(this).scrollTop()>40?$("#scroll-top").fadeIn():$("#scroll-top").fadeOut()})),$("#scroll-top").click((function(){$("html, body").animate({scrollTop:0},1e3)}))}));
Использовал ли я синтаксис, который не поддерживает angular 9?
#scroll-top
может не отображаться, когда срабатывает событиеready
. Angular работает с другим жизненным циклом рендеринга. Это распространенная проблема при попытке поместить jQuery в проекты Angular. Как минимум вместо этого сделайте прокрутку к верхней кнопке/элементу угловым компонентом и используйте событие щелчка для прокрутки вверх. Также вам следует рассмотреть возможность использования DOCUMENT. - person Alexander Staroselsky   schedule 14.05.2020ready
. - person Alexander Staroselsky   schedule 14.05.2020#scroll-top
в этом приложении Angular? Учитывая, что Angular отображает компонент HTML в своем жизненном цикле? Проблема в том, что элемент может и, вероятно, не существует в момент выполнения jQueryready
(другой жизненный цикл)? - person Alexander Staroselsky   schedule 14.05.2020