【问题标题】:fadeToggle child elementsfadeToggle 子元素
【发布时间】:2011-05-11 22:10:29
【问题描述】:

fadeToggle 没有像我预期的那样工作。

这是一个小提琴样本:http://jsfiddle.net/JNu2q//

我需要做的是让更多元素淡入,但所有子元素

 <div id="happenings">
    <h3>Clicky<span class="ui-icon ui-icon-circle-triangle-e"></span></h3>
     <span class="ui-helper-hidden"><div class="more"> yadada</div></span>
    <h3>Clicky<span class="ui-icon ui-icon-circle-triangle-e"></span></h3>
        <span class="ui-helper-hidden">THINGS</span>
             <h3>Clicky<span class="ui-icon ui-icon-circle-triangle-e"></span></h3>
        <span class="ui-helper-hidden"">THINGS</span>
</div>
<script type="text/javascript">
$('#happenings>h3').click(function() {

   $(this).next('span').fadeToggle()
    $('span', this).toggleClass('ui-icon-circle-triangle-s'); 
}); 
</script>

当点击展开时小提琴会显示第一个项目,但不会淡入也不会收缩。

这是我正在尝试做的一个高度缩小的版本。我正在通过 ajax 将配置文件加载到每个文件中。跨度内部是一些其他元素。所以其中膨胀和收缩。简而言之,我需要 span 及其子 div 淡入。

谢谢

【问题讨论】:

    标签: javascript jquery html jquery-ui


    【解决方案1】:

    这是你的罪魁祸首

    <div class="more"> yadada</div>
    

    看起来有块显示的 div 与淡入混淆了。如果将其更改为跨度

    <span class="more"> yadada</span>
    

    或将其显示设置为内联(或内联块)

    <div class="more" style="display:inline;"> yadada</div>
    

    然后就可以了。

    【讨论】:

    • 确实如此。但现在我不需要重新考虑其他一些事情。谢谢,至少现在我知道它为什么不起作用了。
    • @matchw 这篇文章 (stackoverflow.com/questions/1091322/…) 建议如果您需要将容器显示为块,请使用自定义动画进行淡入淡出。
    猜你喜欢
    • 1970-01-01
    • 2023-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-06
    • 1970-01-01
    相关资源
    最近更新 更多