2011-08-21 91 views
2

我一直在为我的展开/折叠手风琴吧备用解决方案周围一段时间现在似乎并没有拿出一个适当的功能,以取代触发词“打开”与必要时“关闭”。问题与.remove()

我知道这是简单的东西,并在一年希望我会回头看,笑。在此之前,任何有经验的人都可以快速帮助jsFiddle http://jsfiddle.net/mtubb/,我会非常有帮助的。

+0

你在哪里初始化你的手风琴? $(“#accordion”).accordion()? –

+0

检查你的语法,你在else之后缺少一个左括号。 –

+0

我没有使用手风琴插件,只是jQuery的slideToggle显示/隐藏内容,脚本应该在文档准备就绪,这是你问我? – Allison

回答

5

它其实简单得多你让:-)

我已经更新(和叉状)你的jsfiddle here。使用三元运算符,您可以在一行中切换文本。

三元运算符是短手的if-else语句:

var value = (condition == true) ? trueValue : falseValue 

可以写为:

if(condition == true) 
{ 
    var value = trueValue; 
} 
else 
{ 
    var value = falseValue; 
} 

希望什么下面的代码确实是相当明显的;如果span的内容是Close,则将其更改为Open,并且反之亦然

$('.accord-bar').append("<span>Close</span>"); 

$('.accord-bar').click(function() { 
    $(this).toggleClass('collapsed'); 

    $(this).find("span").text(($(this).find("span").text() == "Open") ? "Close" : "Open"); 

    $(this).next('.pairing').slideToggle(); 
}); 
+0

Wahoo!非常感谢... #ternaryoperatorsslashjamwafflesFTW – Allison

+0

没有问题Allison :-)很高兴我能成为服务! – Bojangles