jQuery 切换()

Posted

技术标签:

【中文标题】jQuery 切换()【英文标题】:JQuery Toggle() 【发布时间】:2012-08-15 13:12:19 【问题描述】:

我正在观看使用 JQuery 切换的教程,我想在我的网站上使用它,但问题是我想在页面加载时将 div 隐藏起来,所以当有人访问该页面时,它只是一个按钮说一些文本以显示内容,当单击该按钮时,然后切换并显示内容,但由于我是新手,我不知道如何停止其默认打开状态:

function random_script(element,speed)
$(element).toggle(speed);


<input type="button" value"Show Results?" onClick="random_script('#somediv',1000);"/>
<div id="somediv"></div>

那么有什么解决办法吗?

【问题讨论】:

这个错误与问题或最终答案无关,而是一个红鲱鱼。我同意编辑战是愚蠢的(即使 IMO @Christoph 正确地使代码正确)。如果 OP 的问题是函数格式不正确,那么我同意他不合时宜,但事实并非如此。 【参考方案1】:
<a href="javascript:void(0)" onClick="random_script('#somediv',1000);">Show Results?</a>
<div id="somediv" style="display:none;"></div>

使用 JQuery (jsfiddle) 替代:

<script type="text/javascript">
    ​$('.showResult')​.click(function ()
        $(this).next('.result').toggle();
    );​​​​​​
</script>
<style>
    ​.result 
        display: none;
    ​
</style>

<a href="javascript:void(0)" class="showResult">Show Results?</a>
<div class="result">Some Result​​​​​​​​​​​​​​​​​​​​​​​​​​</div>​​​​​​​​​​​​​​​​​​​​​​

【讨论】:

@Waleed 添加速度切换为切换(速度) 感谢您和另外一件事,我正在使用 JQuery 刷新一个 div,但是,当我应用脚本并保存然后查看它时。它让我在该页面的某个位置复制了该页面 @Waleed 确保在刷新之前清除 div .empty()。 JQuery 只是附加到它上面。 @Waleed 我的错是$(&lt;div_name_here).empty();【参考方案2】:

添加一个css规则

#somediv display:none;

【讨论】:

【参考方案3】:

为了反转toggle() 的初始功能,您必须首先隐藏目标元素。您可以通过在其上声明#somedivdisplay:none 来实现这一点。

执行此操作时,toggle() 将显示该元素。

这里有一个例子fiddle

此外,您不应使用内联事件属性,而应使用真正的事件处理程序。

$("input").on("click".function()
   random_script("#somediv",1000);
);

function random_script(element,speed)
    $(element).toggle(speed);

是正确的方法。

【讨论】:

【参考方案4】:

您错过了 功能。

function random_script(element,speed) 
  $(element).toggle(speed);

【讨论】:

@Christoph 你到底为什么要改变他的问题?你修改了他的代码。 @Christoph 代码在脚本标签内,我不认为这只是一个错字,肯定是他复制/粘贴了标记/脚本。 @Mihai 他陈述了一个完全不相关的问题。他的切换有效,所以不可能是这个简单的语法错误。他只是想要另一个初始状态。

以上是关于jQuery 切换()的主要内容,如果未能解决你的问题,请参考以下文章

jquery点击图标来回切换的几种方法(如开关

jQuery切换多个类

jQuery 如何实现本地切换语言

jQuery 切换()

jQuery - 垂直向上切换(即不向下)

JQuery: JQuery效果(隐藏显示切换,滑动,淡入淡出,以及动画)