2011-08-21 5 views
2

나는 지금 내 확장/축소 아코디언 바 대신 사용할 수있는 대체 솔루션으로 원숭이였으며 트리거 단어 "Open"을 대체 할 적절한 함수를 찾지 못했습니다. 필요한 경우 "닫기".문제 : .remove()와 관련된 문제

나는 이것이 단순한 물건이라는 것을 알고있다. 그리고 1 년 후에 나는 되돌아보고 웃을 것이다. 그때까지 jsFiddle을 사용한 빠른 도움 http://jsfiddle.net/mtubb/ 경험이 많은 사람은 매우 도움이 될 것입니다. 당신이

내가 업데이트 한

(그리고 갈래) :-) 당신 JSFiddle here을 그것을 만드는 것보다

+0

에 대한 링크입니까? $ ("#accordion") .accordion()? –

+0

구문을 확인하면 else 뒤에 여는 괄호가 없습니다. –

+0

아코디언 플러그인을 사용하지 않고 jQuery의 slideToggle을 사용하여 콘텐츠를 표시하거나 숨기고 스크립트를 문서로 실행해야합니다. – Allison

답변

5

사실은 간단합니다. 삼항 연산자를 사용하면 텍스트를 한 행으로 토글 할 수 있습니다.

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

은 다음과 같이 쓸 수있다 :

삼항 연산자는 경우-else 문에 대한 짧은 손입니다 희망의 코드는 아래에 무엇을

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