jPanelMenu打破了AngularJS ng-click

时间:2013-06-06 22:47:21

标签: angularjs

我在左侧菜单jPanelMenu中使用ToDo application。我已经创建了一个指令,将jPanelMenu应用于适当的元素。

所有内容都按预期工作,除了嵌套的ng-repeat,在元素内部嵌套了ng-click,并使用jPanelMenu重新分配。

<jpmenu>
    <ul class="unstyled">
        <li ng-repeat="category in categories"> 
            <a href="#" ng-click="setFilterCategory(category)">{{ category }}</a>
        </li>
    </ul>
</jpmenu>

在创建的jpanel菜单中未触发ng-click事件。

注意:

  • jPanelMenu使用jpmenu元素并将其样式应用于它,而不是使用原始的dom元素
  • 原始DOM元素仍然存在,它们是“display:none;”
  • 重新创建的jpanel菜单元素
  • 中缺少类ng-scope
  • 如果我取消隐藏并单击它,则ng-click元素会在原始DOM元素上正常触发,但重新创建的元素根本不会触发。

我在指令中添加了一个超时来延迟jpanel菜单重新创建(等待angular首先完成它的其他指令)但这没有帮助

以下是一个确切发生了什么事情的例子(由于跨站点安全,这个因素并没有在铬中运行):http://jsfiddle.net/47PXj/

如果您单击jsfiddle中未隐藏的原始菜单项,您将看到文本更新,但如果您单击左侧菜单中的菜单项,则它们不起作用。

1 个答案:

答案 0 :(得分:0)

您忘了引导您的应用。试试这个:

<body ng-app="myApp">