AngularJS中的jQuery触发器等价物
我在我的项目中使用AngularJS,我不想包含jQuery。 我想在AngularJS中执行相当于jQuery的jQuery
$('.someclass').trigger('create');
我在互联网上搜索但找不到一个。
AngularJS内置了jqLite。 请参阅文档以查看可用的方法
Angular jqLite
对于您的场景:
$
将无法在angularJS中使用, angular.element
相当于$
。 但是jqLite非常有限,不支持“id by selectors”,这意味着你不能简单地使用angular.element
来按类或id选择元素
var element = angular.element('#foo')
你必须使用以下
var element = angular.element(document.querySelector('#foo'))
你可能会问,“为什么不使用document.getElementById(’#foo’)?” 但请记住我们正在使用jqLite,因此我们必须使用angular.element
才能在元素上使用jqLite方法。
您可以使用.triggerHandler()
而不是.trigger()
。 jQuery triggerHandler文档
jqLite不支持click()
。 解决方法是使用.ready()
element.ready(function() { console.log('Click'); });