我想要的是'.child'图像始终在屏幕上,但显示和隐藏.parent div。我已经能够让它显示一次并隐藏一次,但我似乎无法弄清楚如何让它重现。我怎样才能让这个点击持续发生?
var main = function() {
$('#logo').on('click',function() {
$(this).parent('.parent').css('visibility', 'visible');
$('#logo').on('click',function() {
$(this).parent('.parent').css('visibility', 'hidden');
});
});
};
$(document).ready(main);
.jumbotron {
height: 250px;
width: 100%;
display: flex;
border: 1px solid green;
}
.parent {
margin: auto;
display: flex;
height: 200px;
width: 80%;
border: 1px solid black;
visibility: hidden;
}
.child {
width: auto;
height: 100px;
margin: auto;
visibility: visible;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='jumbotron'>
<div class='parent'>
<img id='logo' class='child' src="http://content.sportslogos.net/logos/6/216/full/813.gif" />
</div>
</div>
好吧,如果你躲'.parent'然后它会隐藏它的孩子为好,如它会隐藏'.child'。如果你想隐藏'.parent'并显示'.child',你必须将'.child'移出'.parent'。 –
最重要的是,每次点击徽标时,您的点击事件都会被绑定,而不是一次。将第二个点击处理程序移出第一个点击处理程序。 – Daedalus
使用切换触发您想要的隐藏和显示效果。点击它将根据其以前的状态切换到可见或隐藏状态。如果没有必要,也不要使用委托事件。使用点击而不是在 –