Angular js ng-click在子元素中不起作用

时间:2014-01-10 21:43:00

标签: javascript angularjs angularjs-ng-click

我正在尝试在点击DOM中的元素时切换变量,我会遇到一些奇怪的行为。

Full Example Here

基本上,如果我将 ng-click 放在 .options div上并将控制器留在 .options-tab div上,事件触发器(但适用于 .options div内的所有内容)。由于某种原因,我被迫再次使用ng-controller。

<div ng-app ng-controller="Swipe" class="container">
    <div class="options" ng-click="swiped=!swiped2">
         <div ng-controller="Swipe" class="options-tab" ></div>
    </div>
</div>

如果我把它放在我想要它的元素上,它就不会触发事件。

<div ng-app ng-controller="Swipe" class="container">
    <div class="options">
         <div ng-controller="Swipe" class="options-tab" ng-click="swiped=!swiped2"></div>
    </div>
</div>

1 个答案:

答案 0 :(得分:2)

你遇到了一些问题:

  1. 创建重复范围的多个控制器声明
  2. ng-click="swiped1=!swiped1"同时optionsoptions-tab元素(正在设置然后立即撤消)
  3. 您的第二个示例设为ng-click="swiped=!swiped2"而不是ng-click="swiped2=!swiped2"
  4. 更新了工作小提琴:http://jsfiddle.net/Xya3f/2/