gpt4 book ai didi

angular - 如何在 Angular 中添加滚动类

转载 作者:行者123 更新时间:2023-12-03 22:49:57 27 4
gpt4 key购买 nike

刚刚又学习了 Angular。安装了 AngularCLI 并尝试从使用 jquery 之前的滚动中添加一个类。我是否需要使用 [ngClass] 来检查带有窗口位置的变量?我现在正在尝试使用@HostListener。

$(function () {
$(document).scroll(function () {
$nav.toggleClass('scrolled', $(this).scrollTop() > $nav.height());
});
});

$(function() {
$(document).scroll(function() {
var x = $(this).scrollTop();
if (x > 3300) {
$nav.removeClass('scrolled');
}
});
});

最佳答案

你可以做这样的事情——

import { Component, HostListener, Inject } from '@angular/core';
import { DOCUMENT } from '@angular/common';

@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {

constructor(@Inject(DOCUMENT) private document: Document) { }

@HostListener('window:scroll', [])
onWindowScroll() {
if (document.body.scrollTop > 20 ||
document.documentElement.scrollTop > 20) {
document.getElementById('subTitle').classList.add('red');
document.getElementById('paragraph').classList.add('green');
}
}
name = 'Angular';
}

在此处查看现场示例: https://stackblitz.com/edit/angular-changeclassonscroll

关于angular - 如何在 Angular 中添加滚动类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54453096/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com