AngularJS DOM选择器
我有一些使用jQuery进行动画效果的自定义指令(Angular内置的ngShow /
ngHide等功能有效,但并不美观)。我想我记得在文档中某个地方读到angular有它自己的DOM选择器(类似angular.export()
or
angular.select()
),我应该使用它而不是$(SELECTOR)
; 但是我现在找不到。
我正在做这样的事情:
//view<div scroll-to="element"> //`element` is set via ng-click
…
</div>
//directive
link: function(scope, elm, attrs)
{
scope.$watch(attrs.scrollTo, function scrollToAction(newValue,oldValue)
{
if ( newValue !== oldValue )
{
elm.animate({
scrollTop:
$('#'+newValue).offset().top //replace jquery selector with angular's
- elm.offset().top
+ elm.scrollTop()
});
}
});
}
我并不是真正在操纵它$('#'+newValue)
,只是获取有关它的信息,所以我认为我没有对Angular犯下罪行。
回答:
“jqLite”(即上定义angular.element页)提供了DOM遍历的方法,如children()
,parent()
,contents()
,find()
,next()
(但不是previous()
)。没有类似选择器的方法。
您可能要尝试使用JavaScript的querySelector。
以上是 AngularJS DOM选择器 的全部内容, 来源链接: utcz.com/qa/408202.html