2016-12-23 1 views
0

내 웹 사이트에 두 부분으로 구성된 탐색이 포함되어 있으므로 두 지점 모두 기본 사이트에 앵커가 배치됩니다. 그 사이트에는 하위 사이트로 연결되는 다른 링크가 추가되었습니다. 이제는 원래 배치 된 메인 사이트로 돌아갈 때 앵커를로드하는 하위 사이트에서만 동일한 탐색 지점을 얻는 데 어려움을 겪습니다. 인터넷에서 여러 가지 방법을 시도했지만 그 중 아무 것도 작동하지 않는 것 같았습니다.앵커가 새 페이지에로드되지 않습니다.

또한 인터넷에서 발견 된 일부 jquery로 부드러운 스크롤을 추가하고 기본 줄을 방지하려고 시도했습니다.

이것은 내 사이트 http://stefangloeggl.com이며 첫 번째 사진 중 하나를 클릭하면 하위 사이트에 도달 할 수 있습니다.

내 마크 업은 다음과 유사합니다.

<a href="index.php#work">Work</a> 
<a href="index.php#about">About</a> 

<div name="work" id="work"> 
Work 
</div> 

<div name="about" id="about"> 
Biography 
</div> 

정말 도움이됩니다.

+0

JSFiddle을 만드십시오 (https://jsfiddle.net/) 여기서 모든 오류를 재현 할 수 있습니다. 이로 인해 도움이 많이 될 확률이 높아집니다. – tiblu

+0

나는 하나를 만들 것이고, 나는 옵션 2가 두 개의 html 사이트를 생성한다는 것을 알지 못한다. 나는이 문제를 보여줄 필요가있다. – nafets97

답변

0

페이지에 아주 이상한 구조가 있습니다. 페이지 마크 업은 몸체 높이/너비가 100 % 인 것으로 보이고 앵커는 다른 쪽 내부에 있습니다. 최상의 솔루션은 깨끗한 마크 업을 처음부터 만드는 것입니다.

신속하지만 더러운 해결책은 window.location.hash 문서 준비를 확인한 다음 부드러운 스크롤을 활성화하는 것입니다. 이처럼

:

$(document).ready(function(){ 
if (window.location.hash.length>1) { 
    $('html, body').animate({ 
     scrollTop: $(window.location.hash).offset().top 
    }); 
} 
}); 
+0

도움 주셔서 감사합니다. 다른 앵커 안의 두 번째 앵커로 문제가 해결되었습니다. 저의 경험에 대해 용서해주십시오.하지만 다른 페이지에서 일어나는 버튼 누르기에서 스크립트를 실행하려면 어떻게해야합니까? (1 페이지의 a 태그가 눌려지면 2 페이지에서 선택한 스크립트가 실행됩니까?) – nafets97

+0

나는 지금 이와 같은 것을 추가하려고 노력했다. 그것은 다소 효과가 있었지만, 올바른 위치로 점프 한 후에 즉시 페이지의 상단으로 전환했다. – nafets97

+0

이 스크립트는 스크립트가 포함되어있는 페이지와 url의 스크립트 체크 해시 섹션에서만 작동합니다. 따라서 page2에 #someid가 있으면 URL이 작동합니다. 당신의 특급과 같아요. 당신은 더 나은 솔루션을 http://benalman.com/projects/jquery-hashchange-plugin/ 플러그인 홈페이지에서 찾을 수 있습니다 (예 : 이벤트 내 응답에서 코드를 이동) 및 다른 장소에서 트리거링 . – MadDocNC

관련 문제