Jquery를 처음 접한다면 대부분의 문제는 제가 사용하는 많은 다른 언어를 기반으로 한 가정으로부터 비롯된 것이라고 생각합니다. 지금 당장 의문은 HTML id를 절대적으로 통과하는 것입니다. 예를 들어, 아이디의 각기 다른 HTML의 여러 세트를 제공 :JQuery 호출 내에서 여러 ID 참조하기
<div id="navi1">
<div class = "linker">
<a href="javascript:void(0)"><img src="gfx/link1ver.png" /></a>
<div class="expand"></div>
<img src="gfx/divide1.png" />
</div>
<div id = "content1">
test
</div>
</div>
<script>
var a = ['#navi0', '#navi1', '#navi2'];
var b = ['#content0', '#content1', '#content2'];
$(a[0] + ' .expand').css({'background-color': '#017693', 'height': '50px'});
$(a[1] + ' .expand').css({'background-color': '#01D092', 'height': '50px'});
$(a[2] + ' .expand').css({'background-color': '#D0013F', 'height': '50px'});
for(i = 0; i <= 2; i++) {
$(a[i] + ' a').click(function() {
for(j = 0; j <= 2; j++) {
if($(a[j] + ' .expand').css('height') == '300px') {
$(a[j] + ' .expand').animate({
height: '0px'
}, 500);
$(b[j]).animate({
width: '100px'
}, 500);
}
}
$(this).next().animate({
height: '300px'
}, 500);
$(b[i]).animate({
width: '500px'
}, 500);
});
}
</script>
이 모든 그냥 JQuery와 어떻게 작동하는지 테스트하는 것입니다. 질문에 관해서, 마지막 애니메이션은 현재 'this'또는 'this'의 부모가 아닌 id에 대해 수행하려고 시도합니다. 이 설정으로 어떻게 그곳에 갈 수 있으며 배열 'b'를 적절하게 사용하고 있습니까? 고유 한 콘텐츠 ID가 아닌 일반 클래스를 사용하는 것이 더 좋을까요?
나는 항상 좋은 코드에 대해 특히주의를 기울 였으므로 원하는 모든 팁을 제공합니다.
당신이 코드가 실제로 어떻게해야하는 설명시겠습니까? 나는 중첩 된 (또는 어떤) for 루프없이 수행 될 수 있다고 보장 할 수 있지만, 코드를 살펴 봤는데 그것을 이해할 수 없다 (그리고 나는 내 머리 속의 for 루프를 통과 할 수 없다). 또한 [jsFiddle] (http://jsfiddle.net)을 설정해보십시오 - 우리를 도울 수 있습니다 :) –
모든 도움을 주셔서 감사합니다. 어제 나는 내가하려고하는 일의 상당히 지저분하면서도 기능적인 버전을 만들었다. jsFiddle에서 작업 할 때까지이 방법이 적절한 대안이되기를 희망합니다. http://dd630.nfshost.com/customer/techkid/test.html (마음에 드는 것은 주로 외부 ID를 호출하는 마지막 애니메이션과 관련이 있습니다) – cantide5ga
예에서 문제가 보이지 않습니다. Chrome에서해야 할 일을하는 것 같습니다. 코드에 깨진 닫는 div가 있음을 유의해야합니다.을 찾으십시오. #container div를 닫으려고 한 것 같습니다. 다른 브라우저에서 문제가 발생할 수 있습니다. – Simon