2011-08-30 15 views
4

섹션이있는 가로 스크롤 div가 있습니다. 한 섹션에서 다른 섹션으로 스크롤하려면 Ariel Flesler's scrollTo 플러그인을 사용하고 있습니다.오버 플로우가 "숨김"인 경우 Firefox가 가로 스크롤 위치를 재설정하지 못하시겠습니까?

참조하십시오 http://jsfiddle.net/carienf/qZeEe/

바이올린은 IE 9, 사파리 5.1에서 완벽하게 작동, 오페라 11.5 크롬 14 (모든 최신 버전). 링크를 클릭하여 해당 섹션으로 스크롤하고 스크롤하거나 마우스 휠로 둘러 볼 수 있습니다.

문제점 : I은 ​​제 2 또는 제 3 스크롤하고 스크롤, 내 위치가 제 부에 리셋을 사용 을 스크롤 한 파이어 폭스 7 (이전)에서 . 이것은 브라우저 창 크기를 조정할 때도 발생합니다. mousewheel을 사용하여 스크롤하면 Firefox가 작동합니다 (즉, 현재 섹션에 머물러 있습니다).

내 질문은 꽤 많이이 질문의 정확한 반복이다 : Problem mixing overflow-x, FireFox, and Javascript

만, 내 특정한 경우 작동하지 않습니다 (수평 스크롤이 볼 수 있도록하는 것입니다) 허용 대답. 또한 질문을 게시 한 사람이 그의 예를 삭제했습니다. 숨겨진 상태로 유지하려면 스크롤 막대가 필요하고 실제로 div 뒤에 숨기는 아이디어는 마음에 들지 않습니다.

Firefox가 내 스크롤 위치를 재설정하지 못하도록하는 방법이 있습니까? (오버플로를 "자동"으로 설정하는 것 외에 다른 방법이 있습니까?) 또는 스크롤바를 숨기는 다른 방법은 없을까요?

업데이트 : Firefox를 8.0 (아직 베타 버전)으로 업데이트하면 다른 브라우저와 동작이 동일합니다.

+0

Chrome 14에서 본인의 예를 보았습니다. 위치가 FF로 다시 스크롤됩니다. –

+1

몇 가지 옵션을 볼 수 있습니다. 1. 스크롤 막대를 잘라냅니다. 약간의 측정을하고 당신은 절대적으로 위치해야합니다. 2. 두 번째 div를 추가하여 세로 스크롤을 수행합니다. 현재 코드가 깨져 있지만 스크롤하는 문제가 해결됩니다. http://jsfiddle.net/s2YFM/ – Hemlock

+0

@vantrung -cuncon. 무슨 뜻인지 모르겠다. 당신은 말합니다 : "... 크롬 14에서는 위치가 위로 스크롤됩니다 ...". 수직 스크롤을 말하는 겁니까? Chrome 14는 언제 '상단으로 스크롤'합니까? 나는 Chrome 14에서 바이올린을 테스트했으며 제대로 작동합니다.내 문제는 제 2 또는 3 섹션에있을 때 내 * 가로 위치가 첫 번째 섹션으로 재설정 된 다음 FF에 스크롤 막대를 사용한다는 것입니다. Chrome 14에서 섹션 링크 중 하나를 클릭하면 원하는 수평 동작 위치 만 변경됩니다. – cfouche

답변

1

두 가지 옵션이 있습니다.

  1. 스크롤 막대를 클립 해제하십시오. 약간의 측정을하고 당신은 절대적으로 위치해야합니다.
  2. 두 번째 div를 추가하면 세로 스크롤이됩니다. 현재 코드가 깨져 있지만 스크롤하는 문제가 해결됩니다. jsfiddle.net/s2YFM
0

방금 ​​똑같은 문제가 발생했습니다. 내 "모달 윈도우"가 팝업 될 때 불행하게도 윈도우를 스크롤 - 투 - 맨 위로 이동시키는 html.noscroll { overflow: hidden }을 설정합니다.

function RemoveScrollbar(html) { 
    var scrollTop = html.scrollTop; 
    html.addClass('noscroll'); 
    html.scrollTop = scrollTop; 
} 

이것은 Mootools의 코드,하지만 슈퍼 간단한 jQuery를 또는 다른 프레임 워크로 변환 :

는 여기에 내가 작업 할 수있는 유일한 솔루션입니다.