gpt4 book ai didi

javascript - 在angularjs切换操作中单击按钮时选择和取消选择div

转载 作者:行者123 更新时间:2023-11-28 00:32:56 24 4
gpt4 key购买 nike

我在一个页面中有多个 div 容器。

每个 div 都有一个按钮!

  • 第一次点击该按钮时:
    • divborder-color 将变为蓝色(这意味着 div 变为选中)。
    • “确定”按钮应隐藏(仅使选定的 div 可见)。
  • 第二次点击 div 内的任意位置;它应该取消选择它:

    • 边框恢复为黑色。
    • 按钮再次可见。
  • 第一次点击全选按钮时,应该选择 div。下次单击同一按钮后,它应该取消选择。 (像切换 Action )

我如何使用 AngularJS 做到这一点。

fiddle

function MainCtrl($scope) {
$scope.addBackground = function () {
angular.element(document.querySelector('.container')).addClass('selectedBorder');
angular.element(document.getElementById('okBtn')).css('display','none');
};
};
.container{
width:30%;
height:100px;
border:1px solid black;
margin:10%;
}
button.btn.btn-primary{
margin-top:10%;
margin-left: 40%;
}
.selectedBorder{
border: 3px solid blue;
}
<div id="myAngularApp" title="Angular Scope" ng-app ng-controller="MainCtrl">

<div class="container">
<button id="okBtn" class="btn btn-primary" ng-click="addBackground()">ok</button>
</div>
</div>

最佳答案

您必须使用 ng-classng-show 才能以 AngularJs 方式执行此操作:

<div class="container" ng-class="{ 'selectedBorder': containerSelected }" ng-click="toggleContainer()">
<button id="okBtn" class="btn btn-primary" ng-click="toggleButton($event)" ng-show="buttonVisible">ok</button>
</div>

function MainCtrl($scope) {

$scope.containerSelected = false;
$scope.buttonVisible = true;
$scope.toggleButton = function (e) {
$scope.containerSelected = true;
$scope.buttonVisible = false;
e.stopPropagation();
};
$scope.toggleContainer = function (e) {
if($scope.containerSelected){
$scope.containerSelected = false;
$scope.buttonVisible = true;
}
};

};

工作演示:demo

关于javascript - 在angularjs切换操作中单击按钮时选择和取消选择div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57850690/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com