Я заметил, что были несколько вопросов, которые были похожи на этот, но не то же самое точно. Я использую ng-repeat
, чтобы показать все загруженные изображения, которые у меня есть. Я могу щелкнуть по нему, и он станет картиной по умолчанию. Я хочу, чтобы изображение было нажато, чтобы выглядеть нормально, а все остальные - overlay
. Я попытался установить $('overlay').hide()
в моей функции selectImage
, но это удалит только оверлей из моего HTML на первом изображении. Любые идеи о том, как я могу это сделать?Установите непрозрачность для всех плиток, за исключением одного выбранного
HTML
<!-- PHOTOS -->
<div class="uploads-section" style="width: 100%;">
<md-grid-list md-cols="3" md-row-height="1:1" md-gutter="8px" style="padding-top: 10px;">
<md-grid-tile md-rowspan="1" md-colspan="1">
<div style="background-color: #3F454b; padding: 30px; cursor: pointer; height: 100%; width: 100%;" class="upload-tile no-outline" layout="column" layout-align="center start" ng-click="uploadImage('photo')">
<md-icon style="color: #FFFFFF; width: 40px; height: 40px;" md-svg-icon="images/upload.png"></md-icon>
<p class="action-link" style="margin: 0; color: #FFFFFF;">UPLOAD</p>
</div>
</md-grid-tile>
<md-grid-tile ng-repeat="photo in org.attachments | filter:{type:'photo'}" md-rowspan="1" md-colspan="1" style="opacity: .5;">
<div style="width: 100%; height: 100%; position: relative; overflow: hidden;" class="attachment-tile no-outline" layout="row" layout-align="center center" ng-click="selectImage($event, photo)">
<!-- <p class="m1">Loading...</p> -->
<img attachment-src="{{ photo.path | ThumbnailFilter }}" default-src="images/no_img.png" style="cursor: pointer; height: 100%; width: 100%; object-fit: cover;">
</div>
</md-grid-tile>
<md-grid-tile ng-repeat="photo in org.defaultOrgImages | filter:{type:'photo'}" md-rowspan="1" md-colspan="1">
<div style="width: 100%; height: 100%; position: relative; overflow: hidden;" class="attachment-tile no-outline" layout="row" layout-align="center center" ng-click="selectImage($event, photo)">
<!-- <p class="m1">Loading...</p> -->
<img attachment-src="{{ photo.path | ThumbnailFilter }}" default-src="images/no_img.png" style="cursor: pointer; height: 100%; width: 100%; object-fit: cover;">
<div id="overlay"></div>
</div>
</md-grid-tile>
</md-grid-list>
</div>
CONTROLLER
$scope.selectImage = function (ev, attachment) {
if (attachment.type == 'photo' && attachment.path != $scope.org.defaultPhoto) {
$scope.org.defaultPhoto = attachment.path;
saveOrg();
}
};
МЕНЬШЕ
#overlay {
position: relative;
cursor: pointer;
height: 100%;
width: 100%;
background-color: rgba(0, 0, 0, 0.4);
}
Да, это не работает, потому что я использую 'ng-repeat'. Я хочу, чтобы все изображения были «затухающими», и тот, который выбран как обычный. У меня все изображения исчезли из-за 'background-color: rgba (0, 0, 0, 0.4)'. Я хочу, чтобы выбранное изображение удалялось. – daveskylark