2013-11-25 83 views
1

CSS:jQuery的fadeToggle不删除显示:无

.hidden-content { display:none; } 

HTML:

<div class="exp-col-content-holder"> 
    <img class="club" alt="Pen Pal Club"  src="http:/site.com/wp-content/themes/familycenter/images/club-penpal.jpg" /> 
    <a class="expand-content-link club-link" href="#">Pen Pal Club</a> 

    <div class="hidden-content">Our Pen Pal Club provides kids with an opportunity to meet other Laurel Springs students around the world, and maybe in their own home towns. It is a time to relax, share information, trade stories, and make new friends.</div> 

</div> 

的jQuery:

jQuery(".expand-content-link").click(function() { 
    jQuery(this).toggleClass("ecf_opened").parent(".exp-col-content-holder").find(".hidden-content").slideToggle(); 
    return false; 
}); 

问题: 我想使用的slideToggle淡入一些点击链接时隐藏的内容。一切似乎都按预期运行,但隐藏内容类中的“display:none”属性永远不会被删除,因此隐藏的内容永远不会被显示。我可以看到不透明度和高度正在动画,但显示:没有任何东西从元素中删除。

但是,如果我双击链接...隐藏的内容瞬间闪烁并再次消失。

似乎一切都应该正常运行给我。

这可能是什么原因造成的?在控制台或任何东西中没有JS错误。

+0

对我的作品http://jsfiddle.net/v3qLm/ ...它必须是 – DaniP

+0

作品在这里的其他元素也http://jsfiddle.net/eSC5L/ – Krishna

+0

似乎有你提到的问题这里http://jsfiddle.net/BLpA4/ – PSL

回答

0

你的代码似乎对我来说很好,如果你仍然面临问题,而不是css尝试隐藏jQuery中的内容使用.hide(),当页面加载最初。请参阅下面的代码。

$(document).ready(function(){ 
$(".hidden-content").hide(); 
$(".expand-content-link").click(function() { 
    $(this).toggleClass("ecf_opened").parent(".exp-col-content-holder").find(".hidden-content").slideToggle(); 
    return false; 
}); 
});