2011-02-24 7 views
2

현재 숨겨진 섹션 (일정, 요율)이있는 사이트에서 작업하고 있습니다. 링크 버튼을 클릭하면 해당 섹션이 표시되고 해당 섹션으로 이동합니다. 나는 단지 하나 또는 다른 일이 일어날 수 있습니다. 나는 div id = "extracontent"로 점프하기 위해 앵커 태그를 사용하고 javascript 함수를 사용하여 숨기고 내용을 표시합니다. 그러나 그것이 숨겨져 있다면 그것이 공개 될 때 조금 아래로 점프합니다. 버튼을 다시 클릭하면 잘 돌아갑니다. 나는 이것이 타이밍 문제라고 확신하지만 jquery 나 javascript에 관해서는 완전히 새로운 newb이므로 어떻게 처리해야하는지 전혀 모른다. 내가 어떤 도움을 명확하고 감사했다 http://www.davidarabis.com/OYoga/숨겨진 div 표시 및 클릭시 동시에 내리기

희망 :

는 현재 사이트를 확인할 수 있습니다.

답변

1

당신은 단순히 "slick-에 온 클릭 핸들러를 추가 할 수 있습니다 과 같이, HTML에서 "앵커 요소를 전환 :

<a onclick="$('#extracontent').show();" id="slick-toggle" class="schedule" href="#extracontent">Check out our Schedule &amp; Rates</a> 
+0

정말 고마워요, 제가 사용하는 상처 입니 다. – xoam

+0

+1 좋은 간단한 솔루션, 이벤트 전파를 사용합니다. – cweston

+0

@xoam - btw, 성공적으로 사용하는 솔루션이라고 말하면서이 대답을 받아 들여야합니다. – cweston

3

이 시도 :

$('#slick-toggle').click(function(e) { 
    e.preventDefault(); 
    $('#extracontent').show(400, function() { 
     window.location = $('#slick-toggle').attr('href'); 
    });  
}); 

그것은이 내용을 표시 한 후 앵커를 포함하도록 URL을 변경해야합니다. 그것은 비록 테스트되지 않습니다.

+0

은'$ ('# 매끄러운 전환을') 크롬의 콘솔에 위의 붙여 넣기 한 후 클릭 '링크 재 404 페이지의 어른들. Chromium 9.0.x/Ubuntu 10.10. –

+0

그 점을 지적 해 주셔서 감사합니다. 분명히 링크가 아닌 새로운 div에 대한 참조였던 콜백 내부에서 $ (this)를 사용하고있었습니다. 지금 대답을 업데이트했습니다. –

+0

해당 페이지가 이미 해당 위치로 이동하는 것처럼 보이지만 실제로 작동하지는 않습니다. 아마도'scrollTop' 애니메이션이 여기 유효할까요? – sholsinger

2

내 머리 위로 떨어져,이 시도 :

$('#my-div').show('normal', function() { 
     window.location = '#anchor-name'; 
    }); 

그렇지 않으면, 당신은 또한에 의해 더 잘 만들 수

var pos = $('#my-div').show('normal').offset().top; 
$('html, body').animate({ scrollTop: pos + 'px' }, 'normal', 'swing'); 
+0

나는 당신의''html, body'' 선택자를 좋아한다. Gecko, IE 및 더 중요한 것은 out-lier : Webkit을 한 번에 처리합니다. – sholsinger

관련 문제