Reputation: 1
Is there an error in siblings('.xx')? Do not want to repeat the image when clicked sorry,My English is so bad :(
$(document).ready(function() {
//$(".ok").removeClass("imga");
//$('.ok2').removeClass('imga').siblings('.ok2').addClass("imga");
$('.item').click(function() {
var id = $(this).attr('id');
var xx = "ok" + id;
$('.ok' + id).removeClass('imga').siblings('.xx').addClass("imga");
$(this).addClass('active').siblings().removeClass('active');
});
});
.active {
font-weight: 900;
color: blue;
}
.hover {
color: blue;
}
.imga {
-webkit-filter: grayscale(1);
filter: grayscale(1);
margin: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="item" id="1">
<img class="ok1 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>
image 1
</div>
<div class="item" id="2" width="50" width="50">
<img class="ok2 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>
image 2
</div>
<div class="item" id="3" width="50" width="50">
<img class="ok3 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>
image 3
</div>
Upvotes: 0
Views: 63
Reputation: 1840
$(document).ready(function() {
$('.item').click(function() {
var $this = $(this);
$this.children().removeClass('imga').end().addClass('active');
$this.siblings().removeClass('active').children('img').addClass('imga');
});
});
.active {
font-weight: 900;
color: blue;
}
.hover {
color: blue;
}
.imga {
-webkit-filter: grayscale(1);
filter: grayscale(1);
margin: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="item" id="1">
<img class="ok1 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>
image 1
</div>
<div class="item" id="2" width="50" width="50">
<img class="ok2 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>
image 2
</div>
<div class="item" id="3" width="50" width="50">
<img class="ok3 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>
image 3
</div>
Upvotes: 0
Reputation: 32354
You don't need ids, you just need to add the class to all img and then remove it for the current one
$(document).ready(function() {
$('.item').click(function() {
$(this).addClass('active').siblings().removeClass('active');
$('.item img').addClass('imga');
$(this).find('img').removeClass('imga');
});
});
.active {
font-weight: 900;
color: blue;
}
.hover {
color: blue;
}
.imga {
-webkit-filter: grayscale(1);
filter: grayscale(1);
margin: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="item" id="1"><img class="ok1 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>image 1</div>
<div class="item" id="2" width="50" width="50"><img class="ok2 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>image 2</div>
<div class="item" id="3" width="50" width="50"><img class="ok3 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>image 3</div>
Upvotes: 0
Reputation: 2734
Why not use active
class to change image display also?
$('.item').click(function(){
$(this).addClass('active').siblings().removeClass('active');
});
.active{
font-weight:900;
color:blue;
}
.item:not(.active) img {
-webkit-filter: grayscale(1);
filter: grayscale(1);
margin:auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="item" id="1"><img class="ok1 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>image 1</div>
<div class="item" id="2" width="50" width="50"><img class="ok2 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>image 2</div>
<div class="item" id="3" width="50" width="50"><img class="ok3 imga" src="http://icons.iconarchive.com/icons/ampeross/qetto/128/icon-developer-icon.png"><br>image 3</div>
Upvotes: 2