【问题标题】:jQuery Tabs animations not workingjQuery选项卡动画不起作用
【发布时间】:2013-04-11 16:39:40
【问题描述】:

由于某种原因,我的 jQuery UI 选项卡无法使用任何动画。我已经尝试了here 中的许多示例,但均未成功。

这是我如何布置标签的方式。

<div id="tabs">
    <ul class="tabsHeader">
        <h1>PARTNERSHIPS</h1>
        <li><a href="#tabs-1"><span class="toothIcon"></span>The Benefits</a></li>
        <li><a href="#tabs-2"><span class="avatarIcon"></span>Join Us</a></li>
    </ul>

    <div class="clearfix"></div>

    <div id="tabs-1">
        <div class="content">
            <h1>header</h1>
            <ul>
                <li>text</li>
                <li>text</li>
                <li>text</li>
                <li>text</li>
                <li>text</li>
                <li>text</li>
            </ul>
        </div>
    </div>

    <div id="tabs-2">
        <div class="content">
        <p>some text</p>
            <form>
                <input type="text" name="name" placeholder="NAME" />
                <input type="text" name="email" placeholder="EMAIL" />
                <input type="text" name="phone" placeholder="PHONE" />
                <input type="text" name="city" placeholder="CITY OF PRACTICE" />
                <input type="submit" />
            </form>
        </div>
    </div>
</div>

像这样初始化:

$('#tabs').tabs({ fxFade: true, fxSpeed: 'fast' });

$( "#tabs" ).tabs({ hide: { effect: "explode", duration: 1000 } });

标签按预期工作,但没有动画?有人知道为什么吗?

【问题讨论】:

  • 您需要提供插件。但是,在您提供的链接中,插件下载似乎不再存在。
  • 我实际上并没有使用那个库,我从jqueryui.com/download得到了标签用户界面

标签: jquery html css jquery-ui jquery-ui-tabs


【解决方案1】:

您正在使用旧的 API 文档。检查这个http://api.jqueryui.com/tabs/#option-hide

您需要使用hideshow 属性来定义动画,而不是fxFade 等。

http://jsfiddle.net/U287r/

【讨论】:

  • 这成功了。 fadeIn 和 fadeOut 有效,但如果我这样做 $( "#tabs" ).tabs({ hide: { effect: "explode", duration: 1000 } });我什么也没得到......我想这是因为我没有包含“show”
【解决方案2】:

使用 jQuery Tab 的 hide optionshow option 制作动画。

您可以使用booleannumberstringobject 来解决此问题。


布尔值:

设置为 true 时,面板将以默认持续时间和默认缓动淡入。

 $('#tabs').tabs({ 
     hide: true,
     show: false   
 });

演示: http://jsfiddle.net/dirtyd77/ppgH9/5/


NUMBER(以毫秒为单位):

面板将以指定的持续时间和默认缓动淡入。

 $('#tabs').tabs({ 
     hide: 1000,
     show: 2000
 });

演示: http://jsfiddle.net/dirtyd77/ppgH9/6/


字符串:

该值可以是内置 jQuery 动画方法的名称,例如“slideDown”,也可以是 jQuery UI 效果的名称,例如“fold”。无论哪种情况,效果都将与默认持续时间和默认缓动一起使用。

 $('#tabs').tabs({ 
     hide: 'fade',
     show: 'explode'   
 });

演示: http://jsfiddle.net/dirtyd77/ppgH9/4/


对象:

如果该值是一个对象,则可以提供效果、延迟、持续时间和缓动属性。

 $('#tabs').tabs({ 
     hide: { effect: "fade", duration: 200 },
     show: { effect: "fade", duration: 200 }    
 });

演示: http://jsfiddle.net/dirtyd77/ppgH9/1/

【讨论】:

  • @Romes 确定,我已经添加了更详细的动画解释。希望这会有所帮助!
猜你喜欢
  • 2011-07-22
  • 2012-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-29
  • 2015-11-10
  • 1970-01-01
  • 2015-09-30
相关资源
最近更新 更多