1
我有以下HTML:父()儿童()并切换不工作
<div class="connections">
<h2>Grads that share your interests</h2>
<div id="connections_nav" class="collapse">
<ul>
<li><h3><a href="">Sally Struthers </a></h3><p>Class of 2008</p></li>
<li><h3><a href="">Sally Struthers </a></h3><p>Class of 2008</p>
</li>
<li><h3><a href="">Sally Struthers </a></h3><p>Class of 2008</p>
</li>
</ul>
</div>
</div>
下面CSS:
.connections h2 {
background-image: url(images/show.gif);
background-position: 0px;
background-repeat: no-repeat;
color: #660a11;
font-size: 13px;
font-weight: bold;
margin: 0px 0px .4em;
padding: 0px 0px 0px 25px; }
.connections .hide h2 {
background-image: url(images/hide.gif);
background-position: 0px;
background-repeat: no-repeat; }
.connections h2.over {
background-image: url(images/hover-show.gif);
background-position: 0px;
background-repeat: no-repeat; }
.connections .hide h2.over {
background-image: url(images/hover-hide.gif);
background-position: 0px;
background-repeat: no-repeat; }
用下面的jQuery:
$(document).ready(function() {
$('.connections h2').click(function() {
$(this).parent().children('.collapse').toggle('slow');
$(this).toggleClass('hide');
});
$('.connections h2').hover(
function() {
$(this).toggleClass('over');
},
function() {
$(this).toggleClass('over');
});
});
发生什么事是整个div消失。当我取出$(this).toggleClass('hide');
代码时,折叠div正确折叠(但显然,不应用显示封闭三角形图像的'hide'类)。这是为什么?