모든 응답을 주셔서 감사합니다.Jquery 처음부터 아코디언 : 아코디언 및 Jquery 성능을위한 마크 업 Q
나는
내 첫 번째 질문은 accourdion에 대한 올바른 의미 HTML 무엇이다 (의미 HTML과 유지에) .. JQuery와 아코디언을 작성,하지만 내 마크 업 및 JQuery와 올바른 또는하지 궁금 해요 (JSFIDDLE example)에 사용하고있는 컨텍스트 ... 현재 저는 콘텐츠를위한 li와 div가있는 ul을 사용합니다 ..
두 번째 질문은이 jquery를 개선 할 수 있습니까? 특정 jQuery 스크립트의 성능 측정
$(document).ready(function(){
//store the exact block of html we are working with... the context
var $context = $("ul#accordion")[0];
console.log($context);
//check the context
$("li a", $context).live("click", function(e){
//store this due to being used more than once
var $clicked = $(this);
//slide anything up thats already open
$("li div", $context).slideUp(200);
//test to see if the div is hidden or not..
//slide down if hidden
if($clicked.next().is(":hidden")){
$clicked.next().slideDown(200);
};
//prevent default behaviour
e.preventDefault();
});
});
모두가 나에게 잘 보인다. jQuery UI의 소스 예제와 비교해보고 싶다면 http://jqueryui.com/demos/accordion/ – Smamatti
큰 제안, 고마워! – Iamsamstimpson
'if (...)'대신'$ clicked.next (': hidden'). slideDown (200);을 사용합니다. 또한 id는 유일해야하기 때문에'$ context'에서'[0]'을 생략 할 수 있습니다. '$ clicked '는 한 번만 사용되므로 제거하고'$ ("li div", this)'를 사용하는 것이 좋습니다. –