Javascript ng点击显示AngularJS
当用户单击图标时,我无法让ng show正常工作。行为应该如下:父div加载并显示一些内容。当用户单击播放图标时,div的内容将隐藏。然而,现在它似乎不起作用。见下面的代码:Javascript ng点击显示AngularJS,javascript,html,angularjs,Javascript,Html,Angularjs,当用户单击图标时,我无法让ng show正常工作。行为应该如下:父div加载并显示一些内容。当用户单击播放图标时,div的内容将隐藏。然而,现在它似乎不起作用。见下面的代码: <div class="col-sm-10 col-md-8 center-block" ng-show="showMe = true"> <div class="play"> <span class="icon_play" ng-click="sho
<div class="col-sm-10 col-md-8 center-block" ng-show="showMe = true">
<div class="play">
<span class="icon_play" ng-click="showMe=false"></span>
</div>
</div>
您正在将
showMe
设置为true,而不是检查它是否设置为true
<div class="col-sm-10 col-md-8 center-block" ng-show="showMe">
<div class="play">
<span class="icon_play" ng-click="showMe=false"></span>
</div>
</div>
此语法不正确:
ng-show="showMe = true"
计算时,它会将true赋值给字段“showMe”
你应该改为:
ng-show="showMe"
这不会解决您的问题,因为字段“showMe”未初始化为true
所以你可以颠倒你的逻辑:
<div class="col-sm-10 col-md-8 center-block" ng-show="!dontShowMe">
<div class="play">
<span class="icon_play" ng-click="dontShowMe=true"></span>
</div>
</div>
或者在控制器代码中初始化showMe。我想您需要:
<div class="col-sm-10 col-md-8 center-block" ng-show="showMe" ng-init="showMe = true">
您想要的是ng show的表达式,而不是作业。请参见此处的文档: 你想要这样的东西:
<div class="col-sm-10 col-md-8 center-block" ng-show="showMe">
<div class="play">
<span class="icon_play" ng-click="showMe=false"></span>
</div>
</div>
这就是ng show的工作原理