Angularjs
按ID获取元素:您可以使用angular.element(‘#element_id’);
按ID获取元素,其中#element_id
是元素的id。
以下是angularjs中的javascript document.getElementById
的替代方法 -
Angularjs通过id获取元素:
var currentElement = angular.element('#element_id');
但是 angular.element 和 document.getElementById
之间有什么区别?答案 0 :(得分:4)
我会添加 @evolutionxbox 答案,document.getElementById
应该比angular.element
略快,因为它不必经历例行程序找出传递给函数的内容以及基于此应该采取的步骤。
关于什么时候应该使用。由于这两个方法返回不同的对象类型(jquery vs HTMLElement),因此您可以根据应用程序中的标准实践选择方法 - 是使用jquery元素还是使用本机dom元素进行操作,或者使用什么操作进行操作要对它们执行,因为使用jquery对象比使用本机HTMLElement更容易执行某些操作。
例如,如果你想使用任何jquery方法,比如.hasClass()
,你需要像angular.element(document.getElementById('some')).hasClass()
这样包装元素,所以它更容易与angular.element('#some').hasClass();
一起使用首先。
一般来说,我会采用angular.element
方法作为angular本地指令中的首选方法。
答案 1 :(得分:3)
当您使用angular.element(或jQuery)选择具有ID的对象时,它需要一个快捷方式并使用document.getElementById
。
最大的区别是angular.element
是jQuery别名,并返回一个jQuery(或jQuery lite)对象。
而document.getElementById
is a native DOM method,返回HTMLElement object。
请务必阅读文档