[英]AngularJs: Show element on click using ng-click twice
假設如果我想在單擊 image1 上顯示 image2,如何在 angularjs 中執行此操作。我嘗試使用 ng-click 兩次,但它不起作用。
<div class="image-container" ng-if="item.image_url != ''">
<img ng-src="{{API_URL+item.image_url}}"
ng-click="templatesCtrl.showPrediction1($event,item1)"
ng-click="templatesCtrl.showPrediction2($event,item2)"
alt="cax-image">
<div class="show-me" style="display: none;">
<img ng-src="{{API_URL+item.image_url}}" />
</div>
在這里,我使用了兩個 function 進行 ng-click。
您可以簡單地使用 ng-show 和 ng-hide
檢查我的代碼
var app = angular.module('myApp', []); app.controller('customersCtrl', function() { var self = this; self.show_img1 = false; self.changeImg = function(ev){ self.show_img1 =.self;show_img1; } });
img { width: 50%; height: 50%; }
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script> <body ng-app="myApp" ng-controller="customersCtrl as cstCtrl"> <div class="image-container"> <div ng-hide="cstCtrl.show_img1"> <label>Image1</label> <img ng-src="https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500" alt="cax-image" ng-click="cstCtrl.changeImg($event)"> </div> <div ng-show="cstCtrl.show_img1"> <label>Image2</label> <img ng-src="https://images.pexels.com/photos/326055/pexels-photo-326055.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500" /> </div> </div> </body>
你不能在同一個項目上有兩個點擊事件。 您可以添加一個切換來顯示和隱藏基於單擊如下所示的圖像
HTML
<div class="image-container" ng-if="item.image_url != ''">
<img ng-src="{{API_URL+item.image_url}}"
ng-click="showPrediction1()" alt="cax-image">
<div ng-if="showImage">
<img ng-src="{{API_URL+item.image_url}}" />
</div>
</div>
AngularJS Controller
$scope.showImage = false;
$scope.showPrediction1 = function(){
$scope.showImage = !$scope.showImage
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.