gpt4 book ai didi

javascript - 在 Angular 1 中更改正文标签类

转载 作者:行者123 更新时间:2023-11-29 15:28:40 26 4
gpt4 key购买 nike

我的问题是我有多个页面,每个页面都需要不同的正文类。

那么在不使用 $rootScope 的情况下,我如何根据正在显示的页面在 DOM 中更改它?

<body class="class-that-needs-changing">

最佳答案

让我们使用这样的指令:

.directive('bodyClasses', function() {
return {
restrict: 'A',
link: function(scope, element, attrs) {
var classes;

scope.$watch(function(scope) {
return scope.$eval(attrs.bodyClasses);
}, function(value) {
classes = value;
angular.element(document.body).addClass(value);
});

// Remove body class when scope or directive destroyed.
scope.$on('$destroy', function() {
angular.element(document.body).removeClass(classes);
});
}
};
});

现在,像这样在单独的 HTML 页面中使用此指令:

<!-- remember, use single quote for string since we are evaluating it -->
<div body-classes="'new-class another-class'"></div>

<span body-classes="'foo' {{someScopeVariable}}"></div>

当加载特定页面或 View 时,这些类将添加到 body 标记中。通过这种方式,您可以在每个单独的页面中将您的类分开,并且您的主要 body 标记不会困惑。

关于javascript - 在 Angular 1 中更改正文标签类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36805996/

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