在html中,我在.fig-8锚内有两个图像。
.img-active = display: block
.img-inactive = display: none
HTML:
<div class="tabs1">
<a class="fig-8" data-tab="tab1">
<img src="/path.png" class="img-active">
<img src="/selected.png" class="img-inactive">
</a>
<a class="fig-8" data-tab="tab2">
<img src="/path1.png" class="img-active">
<img src="/selected.png" class="img-inactive">
</a>
<a class="fig-8" data-tab="tab3">
<img src="/path2.png" class="img-active">
<img src="/selected.png" class="img-inactive">
</a>
</div>我所需要的是,当您单击锚时,.img-active应该是display: none,.img-inactive = display: block
正如我在js文件中所做的那样:
$('.tabs1 a').on('click', function() {
$(this).find('.img-active').hide();
$(this).find('.img-inactive').show();
});它正在做我想做的事情,但是如果您单击第二个或第三个锚点,我单击的图像不会达到它的原始形状(默认图像)。
有什么建议吗?
发布于 2017-06-14 19:18:07
这不能用CSS来实现吗?您可以使用:focus伪类。
.img-inactive,.img-active {float:left;}
.img-inactive {display:none;}
.img-active {display:block;}
a:focus .img-inactive {display:block;}
a:focus .img-active {display:none;}<div class="tabs1">
<a class="fig-8" data-tab="tab1" href="#">
<img src="//placehold.it/150/5C5/FFF?&text=active" class="img-active">
<img src="//placehold.it/150/C55/FFF?&text=inactive" class="img-inactive">
</a>
<a class="fig-8" data-tab="tab2" href="#">
<img src="//placehold.it/150/5C5/FFF?&text=active" class="img-active">
<img src="//placehold.it/150/C55/FFF?&text=inactive" class="img-inactive">
</a>
<a class="fig-8" data-tab="tab3" href="#">
<img src="//placehold.it/150/5C5/FFF?&text=active" class="img-active">
<img src="//placehold.it/150/C55/FFF?&text=inactive" class="img-inactive">
</a>
</div>
否则,使用jQuery也很容易做到
$('.tabs1 a').on('click', function() {
$('.tabs1 a .img-inactive').hide();
$('.tabs1 a .img-active').show();
$(this).find('.img-inactive').show();
$(this).find('.img-active').hide();
});.img-inactive,.img-active {float:left;}
.img-inactive {display:none;}
.img-active {display:block;}<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="tabs1">
<a class="fig-8" data-tab="tab1" href="#">
<img src="//placehold.it/150/5C5/FFF?&text=active" class="img-active">
<img src="//placehold.it/150/C55/FFF?&text=inactive" class="img-inactive">
</a>
<a class="fig-8" data-tab="tab2" href="#">
<img src="//placehold.it/150/5C5/FFF?&text=active" class="img-active">
<img src="//placehold.it/150/C55/FFF?&text=inactive" class="img-inactive">
</a>
<a class="fig-8" data-tab="tab3" href="#">
<img src="//placehold.it/150/5C5/FFF?&text=active" class="img-active">
<img src="//placehold.it/150/C55/FFF?&text=inactive" class="img-inactive">
</a>
</div>
发布于 2017-06-14 19:21:08
你能试试这个吗?
$('.tabs1 a').on('click', function() {
$('.img-active').not(this).show();
$('.img-inactive').not(this).hide();
$(this).find('.img-active').hide();
$(this).find('.img-inactive').show();
});https://stackoverflow.com/questions/44552831
复制相似问题