【问题标题】:JQuery Toggle and Show Slow / FastJQuery 切换并显示慢/快
【发布时间】:2011-06-13 13:31:48
【问题描述】:

我想使用 JQuery 切换对象。我只能显示/隐藏对象,我想慢慢地而不是立即显示/隐藏它们。

Showing and Hiding of Objects in JQuery

$("#txtA").toggle(type == "A");

我不知道如何在上面的代码中添加“.show('slow')”。请帮我。谢谢。

【问题讨论】:

  • 我发布了一个答案。您根本无法将持续时间参数添加到上面的代码中,因为它只需要一个布尔值,就像您调用它的方式一样。如果您想更改持续时间,您应该在 if/else 块语句中进行。您可以在.show().hide() 的括号内更改持续时间(以毫秒为单位)。

标签: jquery toggle show-hide


【解决方案1】:

The documentation 表示.toggle 没有重载,两者都采用布尔值并且允许您指定缓动参数:

.toggle( [ duration ], [ callback ] )
.toggle( [ duration ], [ easing ], [ callback ] )
.toggle( showOrHide )

但是,文档还说:

$('#foo').toggle(showOrHide);

相当于:

if ( showOrHide == true ) {
  $('#foo').show();
} else if ( showOrHide == false ) {
  $('#foo').hide();
}

所以,使用这个事实:

if (type == "A") {
  $('#txtA').show('slow');
}
else {
  $('#txtA').hide('slow');
}

而且,不,对不起,你不能避免这样写。

无论如何,想要调用一个名为“toggle”的函数却指定你是要显示还是隐藏,这似乎很奇怪。

【讨论】:

    【解决方案2】:

    试试:

    if(type == "A"){
        $("#txtA").show(500);
    } else{
        $("#txtA").hide(500);
    }
    

    【讨论】:

      猜你喜欢
      • 2011-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多