Jquery显示/隐藏DIV无法正常工作

时间:2015-10-28 11:00:41

标签: javascript jquery css jquery-selectors

我有一个问题,我希望可以解决..

found
$(".front").click(function(){
    $('.front').css("display","none");
    $('.back').slideDown('fast');
});
$(".back").click(function(){
    $(".back").hide();
    $(".front").slideDown("fast");
});

尽管我正在使用类而不是ID,但是所有块都被点击了。如果使用$(this).find原始内容的显示不起作用?

有没有人有任何解决方案?

最好的问候

2 个答案:

答案 0 :(得分:5)

您只需使用this

$(this).hide()只会隐藏点击的项目 $(this).siblings('.back').slideDown('fast');会找到类.back的同级项目并向下滑动,不会影响其他.back元素。

工作演示:



$(".front").click(function() {
    $(this).hide();
    $(this).siblings('.back').slideDown('fast');
});
$(".back").click(function() {
    $(this).hide();
    $(this).siblings('.front').slideDown('fast');
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="cat">
<a id="iconblock" class="front iconblock" style="background-image: url(dfgdf.png);">image</a>
<a id="iconblock" class="back iconblock" style="display: none;">text content</a></div>

<div class="cat">
<a id="iconblock" class="front iconblock" style="background-image: url(dewfgdf.png);">image2</a>
<a id="iconblock" class="back iconblock" style="display: none;">text content2</a></div>

<div class="cat">
<a id="iconblock" class="front iconblock" style="background-image: url(dfgdf.png);">image3</a>
<a id="iconblock" class="back iconblock" style="display: none;">text content3</a></div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

$(".front").click(function() {
	$(this).hide();
	$(this).next('.back').slideDown('fast');
});
$(".back").click(function() {
	$(this).hide();
	$(this).prev('.front').slideDown('fast');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="cat">
<a id="iconblock" class="front iconblock" style="background-image: url(dfgdf.png);">image</a>
<a id="iconblock" class="back iconblock" style="display: none;">text content</a></div>

<div class="cat">
<a id="iconblock" class="front iconblock" style="background-image: url(dewfgdf.png);">image2</a>
<a id="iconblock" class="back iconblock" style="display: none;">text content2</a></div>

<div class="cat">
<a id="iconblock" class="front iconblock" style="background-image: url(dfgdf.png);">image3</a>
<a id="iconblock" class="back iconblock" style="display: none;">text content3</a></div>