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 我的错是$(<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 切换()的主要内容,如果未能解决你的问题,请参考以下文章