2011-01-05 1 views
2

프로젝트의 경우 jQuery UI의 아코디언 기능과 비슷한 기능이 필요하지만 jQuery UI를 사용하는 이 아닌입니다. 하지만 나는 내 코드에서 가지고있는 문제가 jQuery UI 아코디언에도 있다는 것을 알았다. 그래서 저는 그것을 예로서 사용할 것입니다. 여기 jQuery에서 아코디언 스타일 메뉴를 사용할 때 픽셀 이동을 수정하는 방법이 있습니까?

는 jQuery를 UI 아코디언에 대한 링크입니다 : http://jqueryui.com/demos/accordion/

당신이 통지하는 경우, 당신은 "제 4"버튼을 몇 픽셀을 이동, "2 장"을 클릭 할 때와 애니메이션이 완료되면, 그것은 이동 몇 픽셀 아래로 돌려 놓습니다. 목록에있는 요소가 많을수록 목록의 맨 위에있는 애니메이션을 활성화 할 때 "차이"가 커집니다.

처음에는 closing 요소의 애니메이션이 opening 요소의 애니메이션과 동시에 시작되지 않았기 때문에 발생한다고 생각했습니다. 그러나 두 가지 애니메이션을 동시에 시작할 수있는 해결책을 찾은 후에 올바른 방법을 사용하고 있음을 알았습니다.

그렇다면 나는 이네 이빙이 문제를 일으키고 있다고 생각하여 animate()에서 여유 옵션으로 "선형"을 사용했습니다. 그리고 문제는 여전히 존재합니다.

해결 방법이 있습니까? 이전 요소 2 개가 움직이는 동안 마지막 요소가 움직이지 않도록하려면?

나는 클라이언트가 성가신 버그로 볼 것이라고 확신하기 때문에 묻습니다.

도움 주셔서 감사합니다.

답변

0

이것은 다소 해결 방법이지만 더 나은 해결책을 찾지 못하면 클라이언트가 수정을 요구할 수 있습니다. 애니메이션이 생기기 직전에 애니메이션 아래에있는 모든 요소의 절대 위치를 얻고 모든 요소를 ​​절대로 설정합니다. 애니메이션이 끝나면 position, top 및 left에 대한 기본 스타일 값을 복원합니다.