如何检查元素是否具有AngularJS类?

时间:2014-01-17 17:58:44

标签: angularjs menu

我有一个关闭面板菜单在网站上完美运行。用户可以使用导航图标或用手指滑动来打开和关闭它。

现在我有一个非常漂亮的导航图标,当点击(并打开菜单)时会从菜单图标转换为X图标,而当再次单击菜单关闭时则相反。 Buuut如果用户滑动菜单打开或关闭而不是使用navicon,则不会触发转换,这可能会导致UX混淆(即菜单关闭,导航显示X而不是常规的3条水平线图标)。

因此,navicon现在有以下代码来触发转换:

ng-click="open = !open" ng-class="{'open-mob':open}">

我认为解决这个问题的一个简单方法就是在每次打开或关闭菜单时触发“open =!open”,因为关闭面板中的js将类slidRight添加到主菜单中菜单打开时的部分,并在关闭时将其删除。

这样,是否有一些直接的方法来检查班级是否在使用AngularJS? 像 if class = slidRight - > “open =!open”。

谢谢!

2 个答案:

答案 0 :(得分:83)

对于那些无法理解Angular的文档的人(包括我),这里有一个对我有用的例子:

angular.element(myElement).hasClass('my-class');

angular.element(myElement).addClass('new-class');

angular.element(myElement).removeClass('old-class');
希望这有助于某人...

答案 1 :(得分:22)

Angular本身使用jqLit​​e的.hasClass()。

请阅读角度文档,了解更多信息。

<击> http://docs.angularjs.org/api/angular.element

https://docs.angularjs.org/api/ng/function/angular.element