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

标签 javascript angularjs angularjs-ng-click

我试图在单击 DOM 中的元素时切换变量,但出现了一些奇怪的行为。

<强> Full Example Here

本质上,如果我将ng-click放在.options div上并将 Controller 留在.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. 多个 Controller 声明创建重复的作用域
  2. ng-click="swiped1=!swiped1"optionsoptions-tab 元素上(已设置,然后立即反转)
  3. 您的第二个示例设置为 ng-click="swiped=!swiped2" 而不是 ng-click="swiped2=!swiped2"

更新了工作 fiddle :http://jsfiddle.net/Xya3f/2/

关于javascript - Angular js ng-click 在子元素中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21054943/

相关文章:

javascript - 如何对 ng-repeat 创建的 $index 元素进行 ng-style ?

angularjs - 如何获取点击次数

javascript - KnockoutJS Observable 适当反弹,但调用给出空字符串?

javascript - jQuery:具有缩放功能的 flex 标题/图像?

javascript - DevExtreme dxChart() 无法缩放/滚动/响应值更改(使用 AngularJS)

angularjs - 将 $scope 变量分配给带有计数的 ng-model

javascript - 如果我在 ng-click 中调用多个函数,会以什么顺序或方式调用它们?

angularjs - 在Angular中的ng-click上从所有子项中删除类,除了单击的子项

javascript - 如何按 '.' '!' '?' 进行 .slice() 文本而不丢失它们? (正则表达式)

javascript - Node JS 上的 PouchDB 文档附件