首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery show()动画还是特效?

jQuery show()动画还是特效?
EN

Stack Overflow用户
提问于 2011-01-21 19:21:26
回答 3查看 563关注 0票数 0

例如,我有一些javascript在我的表中每隔2秒隐藏和显示一些行。但我想在jquery中使用一些效果或动画: show()。我试过slideDown(‘慢’),但它没有动画,不知道为什么?fadeIn(“慢”)可以正常工作,但不能滑动?

我的JavaScript

代码语言:javascript
复制
<script type="text/javascript">
var max = 0;
var index = 0;

$(function() {

    max = $("tbody tr.hidden").length;
    ticker();
});

function ticker() {
    $("tbody tr.hidden:visible").hide();

    var a = index;
    var b = index + 1;
    var c = index + 2;
    $("tbody tr.hidden:hidden").filter(":eq(" + a + "), :eq(" + b + "), :eq(" + c + ")").show(1000); /* WANT TO ANIMATE THIS */

    index += 3;
    if (index>= max) index = 0;    

    setTimeout("ticker()", 2000);
     $('tbody tr:visible:even').css('background-color', '#114c00');
}

</script>

我的HTML

代码语言:javascript
复制
<table id="gradient-style" summary="Currency">
    <thead>
        <tr>
            <th scope="col" class="flag"></th>
            <th scope="col" class="currency"></th>
            <th scope="col" class="title"></th>
            <th scope="col" class="buy">We Buy</th>
            <th scope="col" class="sell">We Sell</th>
        </tr>
    </thead>
    <tfoot>
        <tr>
            <td colspan="5">Logo Goes here?</td>
        </tr>
    </tfoot>
    <tbody>
        <tr id="fixed">
            <td class="flags"><img src="flags/USD.png" /></td>
            <td >USD</td>
            <td>US DOLLAR</td>
            <td class="value"><span>3.1</span></td>
            <td class="value"><span>3.1</span></td>

        </tr>
        <tr id="fixed">
            <td class="flags"><img src="flags/EUR.png" /></td>
            <td>EUR</td>
            <td>EURO</td>
            <td class="value"><span>5.10</span></td>
            <td class="value"><span>3.1</span></td>
            </div>
        <tr id="fixed">
            <td class="flags"><img src="flags/JPY.png" /></td>
            <td>JPY</td>
            <td>JAPANESE YEN</td>
            <td class="value"><span>8.10</span></td>
            <td class="value"><span>3.1</span></td>

        </tr>

        <tr class="hidden">
            <td class="flags"><img src="flags/CAD.png" /> </td>
            <td>CAD</td>
            <td>TEST1 DOLLAR</td>
            <td class="value"><span>8.10</span></td>
            <td class="value"><span>3.1</span></td>
        </tr>

       <tr class="hidden">
            <td class="flags"><img src="flags/CNY.png" /> </td>
            <td>CNY</td>
            <td>TEST2 YUAN</td>
            <td class="value"><span>8.10</span></td>
            <td class="value"><span>3.1</span></td>
        </tr>
        <tr class="hidden">
            <td class="flags"><img src="flags/USD.png" /> </td>
            <td>CAD</td>
            <td>TEST3 DOLLAR</td>
            <td class="value"><span>8.10</span></td>
            <td class="value"><span>3.1</span></td>
        </tr>

         <tr class="hidden">
            <td class="flags"><img src="flags/CAD.png" /> </td>
            <td>CAD</td>
            <td>TEST4 DOLLAR</td>
            <td class="value"><span>8.10</span></td>
            <td class="value"><span>3.1</span></td>
        </tr>

       <tr class="hidden" >
            <td class="flags"><img src="flags/CNY.png" /> </td>
            <td>CNY</td>
            <td>TEST5 YUAN</td>
            <td class="value"><span>8.10</span></td>
            <td class="value"><span>3.1</span></td>
        </tr>
        <tr class="hidden">
            <td class="flags"><img src="flags/USD.png" /> </td>
            <td>CAD</td>
            <td>TEST6 DOLLAR</td>
            <td class="value"><span>8.10</span></td>
            <td class="value"><span>3.1</span></td>
        </tr>

    </tbody>
</table>
EN

回答 3

Stack Overflow用户

发布于 2011-01-21 19:28:22

The jQuery API表明,对于大多数(如果不是全部)时间值,您可以使用“慢”、“快”或数字作为参数。"show“和"slideDown”方法的工作原理基本相同。

所以也许你的选择器实际上没有返回任何东西?

尝试:

代码语言:javascript
复制
var selector = $("tbody tr.hidden:hidden").filter(":eq(" + a + "), :eq(" + b + "), :eq(" + c + ")");
alert(sizeof(selector));

要确保选择某些元素,请执行以下操作

编辑:

尝尝这个

代码语言:javascript
复制
$.each($("tbody tr.hidden:hidden").filter(":eq(" + a + "), :eq(" + b + "), :eq(" + c + ")"),function(i,val){
            $(this).show(750);
        });
票数 0
EN

Stack Overflow用户

发布于 2011-01-21 19:31:49

有些东西在tr中是行不通的。试着做同样的事情,只是在行中有td和th元素。

票数 0
EN

Stack Overflow用户

发布于 2011-01-21 19:41:49

尝试用setInterval("ticker()", 2000);替换setTimeout("ticker()", 2000);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4758202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档