如何 select 中的元素 AngularJS

How to select elements in AngularJS

我正在尝试使用 AngularJS 通过标签名称获取元素。

例如,

angular.element(document.querySelector('h1')).css('color', 'green');

HTML 中的元素:

<div>
    <h1>Title 1</h1>
</div>
<div>
    <h1>Title 2</h1>
</div>

它只对第一个元素有效,对第二个元素无效。我不确定它的原因。谁能帮我解决这个问题?非常感谢!

querySelector() 方法 returns 匹配文档中指定 CSS 选择器的第一个元素。

querySelectorAll() 方法 returns 文档中匹配指定 CSS 选择器的所有元素,作为静态 NodeList 对象。

如@Tushar 所述,处理此问题的最佳方法是使用 ng-class。让 Angular 为您进行 DOM 操作

你的CSS

.someclass{
  color: green
}

你的HTML

<div ng-class="{'someclass': obj.value == 'somevalue'}">
    <h1>Title 1</h1>
</div>
<div>
    <h1>Title 2</h1>
</div>

'someclass' 之后,在您的控制器中,您可以插入任何最有意义的表达式。当您的表达式计算结果为真时,'someclass' 将应用于您的 Div.