angular.js - Bagaimana untuk lalai warna latar belakang elemen pertama kepada merah semasa ng-repeat, klik pada elemen yang sepadan dan latar belakang akan bertukar merah sambil menukar semua elemen lain kepada hitam
过去多啦不再A梦
过去多啦不再A梦 2017-05-15 17:04:32
0
2
576

Ia adalah untuk menukar gaya secara dinamik dalam ng-klik Adakah anda mempunyai sebarang idea atau kaedah? Urgent! ! Menunggu dalam talian! ! ! Tolonglah, semua tuhan yang hebat! !

过去多啦不再A梦
过去多啦不再A梦

membalas semua(2)
给我你的怀抱

Berikan idea mudah:
JS:


$scope.isActive = 0;
$scope.arr = [
    {
        //code here
    },
    {
        //code here
    }
];
$scope.selectItem = function (index) {
    item.isActive = index;
}

HTML:

<ul>
    <li ng-repeat="item in arr track by $index" ng-class="{red:isActive === $index, black:!isActive === $index}" ng-click="selectItem($index)"></li>
</ul>

CSS:

.red {
    background: red;
}
.black {
    background: black;
}

Tukar kod anda seperti ini:

HTML:



<p class="p10 c-white w50p fl mr1 tc" ng-repeat="e in item.images">
    <p class="w50p h50 img_p" ng-class="{b-red:isActive === $index,b-white:!isActive === $index}" ng-click="changeGood($index)">
        <img src="{{e.path}}">
    </p>
    <span class="ib w50p fs0-6 span-over">{{e.description}}</span>
</p>

pengawal:


$scope.isActive=0;

$scope.changeGood=function(index){
    $scope.isActive=index;
    
}
Ty80

Saya telah menjawab soalan yang sama dengan soalan anda yang dibangkitkan oleh orang lain sebelum ini, saya telah menukar demo yang saya tulis sebelum ini dan menghantarnya kepada anda sepenuhnya. Anda boleh melihatnya dan jika anda tidak melihat kesannya , sila Panjat dinding, demo adalah seperti berikut:
Demo

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan