ionic 寫一個五星評價(非指令)


Controller里的代碼:

 1 .controller('evaluateCtrl', function($scope, $state, $stateParams, $ionicPopup,$ionicHistory,Popup) {
 2 
 3     //定義一個數組 映射五顆星星的位置和圖片
 4     $scope.starArray = [
 5       {"id" : 1,
 6         "src":"img/icons/starBack.png"
 7       },
 8       {"id" : 2,
 9         "src":"img/icons/starBack.png"},
10       { "id" : 3,
11         "src":"img/icons/starBack.png"},
12       { "id" : 4,
13         "src":"img/icons/starBack.png"},
14       { "id" : 5,
15         "src":"img/icons/starBack.png"
16       }
17     ];
18      //初始化評價星級為0
19     $scope.currentStar = 0;
20      //改變星星的背景圖  點擊的當前星星和做左邊的星星換成亮圖,右邊的星星變成灰圖
21     function changeStars(){
22       for(var i = 0;i < $scope.starArray.length; i++){
23         if($scope.currentStar >= $scope.starArray[i].id){
24           $scope.starArray[i].src = "img/icons/star.png";
25         }else{
26           $scope.starArray[i].src = "img/icons/starBack.png";
27         }
28       }
29     }
30 
31     //點擊星星的操作
32     $scope.clickStar = function(item){
33       $scope.currentStar = item.id;
34       changeStars();
35     };
36     //點擊評價按鈕 判斷用戶是否已經點擊星星 給與評價
37     $scope.clickPublish = function() {
38       if($scope.currentStar == 0){
39         //若沒點擊,彈出提示
40         Popup.loadMsg('請點擊對應的星星給協作人評價!', 1500);
41       }else{
42         //TODO
43       }
44     };
45 
46   })

html 里的代碼

1 <div class="center_div" style="height:60px;padding-left: 20px;padding-top: 10px;padding-right: 20px;">
2         <div style="float:left;white-space:nowrap" ng-repeat="item in starArray">
3           <img ng-click="clickStar(item)" src="{{item.src}}"/>
4         </div>
5       </div>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM