Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 平稳、缓慢地向下滑动表列_Javascript_Jquery - Fatal编程技术网

Javascript 平稳、缓慢地向下滑动表列

Javascript 平稳、缓慢地向下滑动表列,javascript,jquery,Javascript,Jquery,我想平稳缓慢地滑下泰伯街 现在的问题是,它是立即出现和隐藏,我如何才能使它顺利 **Please check this fiddle:** HTML: 我想你的意思是使用slideToggle()而不是toggleslide() 但是,对于表格单元格,动画仍然无法顺利工作。如果您为tr设置一个高度,它的工作会稍微平稳一些。对于完全平滑的动画,我建议使用divs 下面是代码的修改版本,该版本具有一种平滑的表格动画: 如您所见,您必须在td上制作动画,而不是tr。我还必须设置td的高度,以使其

我想平稳缓慢地滑下泰伯街

现在的问题是,它是立即出现和隐藏,我如何才能使它顺利

**Please check this fiddle:**

HTML:


我想你的意思是使用
slideToggle()
而不是
toggleslide()

但是,对于表格单元格,动画仍然无法顺利工作。如果您为
tr
设置一个高度,它的工作会稍微平稳一些。对于完全平滑的动画,我建议使用
div
s

下面是代码的修改版本,该版本具有一种平滑的表格动画:

如您所见,您必须在
td
上制作动画,而不是
tr
。我还必须设置
td
的高度,以使其正常工作,否则它只会出现和消失

为什么动画不能在表上正常工作? 从Chaffer和Swedberg的“学习jQuery”

表行为动画设置了特殊的障碍,因为浏览器 对其可见显示使用不同的值(表行和块) 财产。没有动画的.hide()和.show()方法是 始终可以安全地与表行一起使用。从jQuery版本1.1.3开始, .fadeIn()和.fadeOut()也可以使用


供您参考:

我想您的意思是使用
slideToggle()
而不是
toggleslide()

但是,对于表格单元格,动画仍然无法顺利工作。如果您为
tr
设置一个高度,它的工作会稍微平稳一些。对于完全平滑的动画,我建议使用
div
s

下面是代码的修改版本,该版本具有一种平滑的表格动画:

如您所见,您必须在
td
上制作动画,而不是
tr
。我还必须设置
td
的高度,以使其正常工作,否则它只会出现和消失

为什么动画不能在表上正常工作? 从Chaffer和Swedberg的“学习jQuery”

表行为动画设置了特殊的障碍,因为浏览器 对其可见显示使用不同的值(表行和块) 财产。没有动画的.hide()和.show()方法是 始终可以安全地与表行一起使用。从jQuery版本1.1.3开始, .fadeIn()和.fadeOut()也可以使用


供您参考:

使用div会容易得多,但如果您喜欢/需要表格,那么就使用表格。我会在表格单元格中放一个div,然后用滑动切换到它。是的,它仍然在那里添加div,但至少您得到了表结构。要使其正常工作,只需对HTML代码做一点小改动,JS保持不变:

HTML





这是主要内容
还有小提琴:


在获得无法更改HTML的信息后 我想你可以编辑javascript?你还没说过什么。这个技巧并不简洁,但不需要更改HTML,它可以完成工作:

因此,使用jQuery

  • 使tr可见
  • 将tr的内容包装在div中
  • 藏起来
  • 使滑块切换与创建的div一起工作
  • 带代码

    $('#mainContent').css('display', 'table-row');
    $('#mainContent > td').wrapInner("<div class='hideshow'></div>");
    $('.hideshow').css('display', 'none');
    
    $('#showContent').click(function (){                        
        $('.hideshow').slideToggle('slow');                                           
    });
    
    $('mainContent').css('display','table row');
    $('#mainContent>td').wrapInner(“”);
    $('.hideshow').css('display','none');
    $('#showContent')。单击(函数(){
    $('.hideshow')。滑动切换('slow');
    });
    

    还有一把小提琴:

    使用div会容易得多,但如果您喜欢/需要表格,那么就使用表格。我会在表格单元格中放一个div,然后用滑动切换到它。是的,它仍然在那里添加div,但至少您得到了表结构。要使其正常工作,只需对HTML代码做一点小改动,JS保持不变:

    HTML

    
    


    这是主要内容
    还有小提琴:


    在获得无法更改HTML的信息后 我想你可以编辑javascript?你还没说过什么。这个技巧并不简洁,但不需要更改HTML,它可以完成工作:

    因此,使用jQuery

  • 使tr可见
  • 将tr的内容包装在div中
  • 藏起来
  • 使滑块切换与创建的div一起工作
  • 带代码

    $('#mainContent').css('display', 'table-row');
    $('#mainContent > td').wrapInner("<div class='hideshow'></div>");
    $('.hideshow').css('display', 'none');
    
    $('#showContent').click(function (){                        
        $('.hideshow').slideToggle('slow');                                           
    });
    
    $('mainContent').css('display','table row');
    $('#mainContent>td').wrapInner(“”);
    $('.hideshow').css('display','none');
    $('#showContent')。单击(函数(){
    $('.hideshow')。滑动切换('slow');
    });
    
    还有小提琴:

    试试这个。
    

    这是主要内容

    $(“#显示内容”)。单击(函数(){ $('mainContent').find(“p”).slideToggle(); });
    试试这个。
    

    这是主要内容

    $(“#显示内容”)。单击(函数(){ $('mainContent').find(“p”).slideToggle(); });
    我必须使用表格,对于divs slideDown也很好,我必须使用表格,对于divs slideDown也很好,请在问题中包含代码。另外,你的JS小提琴不工作。请在问题中包含代码。另外,你的JS小提琴不工作。请不要更改HTML。用现有的HTML来做,这样你就不能改变HTML了吗?不,我不能。我现在的处境是我必须处理桌子。它的方式很容易与div,但不能在我的情况下使用它请不要更改HTML。用现有的HTML来做,这样你就不能改变HTML了吗?不,我不能。我现在的处境是我必须处理桌子。它的方式很容易与div,但不能在我的情况下使用它
    <a href="javascript:void(0)" id="showContent">Show Content</a>
    <br><br><br>
    <table width="400" border="1">
        <tr>
            <td><div style="display: none;" id="mainContent">THIS IS MAIN CONTENT</div></td>
        </tr>
    </table>
    
    $('#mainContent').css('display', 'table-row');
    $('#mainContent > td').wrapInner("<div class='hideshow'></div>");
    $('.hideshow').css('display', 'none');
    
    $('#showContent').click(function (){                        
        $('.hideshow').slideToggle('slow');                                           
    });
    
     Try this.
     <a href="javascript:void(0)" id="showContent">Show Content</a>
     <table id="mainContent" width="400" border="1">
     <tr>
        <td> <p style="display: none"> THIS IS MAIN CONTENT</p></td>
      </tr>
    </table>
    
    
     $("#showContent").click(function () {
     $('#mainContent').find("p").slideToggle();
     });