我的角度应用程序中有一个小指令,用于创建子菜单。
在我的一个页面中,我有很多子菜单(基本上每个元素都有一个)
我正在尝试编写一个函数来检测屏幕上的位置,以便我可以决定是否要向上或向下打开子菜单。
如果我在页面上只有一个元素,那么函数本身似乎工作正常,但只要我有多个元素,它就会中断,因为它选择了我所有指令中的所有元素。
我知道用不好的解释很难理解,所以这里有一些代码:
指令模板:
BUF_SIZE
指令js
<div class="full-screen-body-overlay" ng-if="showToggleMenu" ng-click="hideRoomSubmenu()"></div>
<div class="submenu" title="submenu">
<!-- Menu Icon -->
<div class="submenu-icon">
<i class="icon"
ng-class="showToggleMenu ? 'ion-close-round' : icon"
ng-click="changeIcon()"></i>
</div>
<!-- Menu -->
<div ng-transclude class="list submenu-content" ng-class="showToggleMenu ? 'active' : ''"></div>
</div>
这是一个小提琴: http://codepen.io/NickHG/pen/GWPEgJ?editors=0010
如果你打开控制台(除了警告说我试图多次加载角度,这与此无关),你打开一个子菜单,你可以看到$ ul(来自{{1获取所有菜单的所有项目,而不仅仅是我刚刚点击的项目(这是我感兴趣的内容)。
有关如何解决此问题的任何建议吗?
感谢