"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 동적 인 크기의 부모 요소 내에서 요소의 스크롤 범위를 제한하는 방법은 무엇입니까?

동적 인 크기의 부모 요소 내에서 요소의 스크롤 범위를 제한하는 방법은 무엇입니까?

2025-06-15에 게시되었습니다
검색:786

How to Limit Scrolling Range of an Element Within a Dynamically-Sized Parent Element?

문제 :

고정 된 사이드 바로 조정을 유지하면서 사용자의 수직 스크롤과 함께 이동하는 스크롤 가능한 맵 디브가있는 레이아웃을 고려합니다. 그러나 맵의 스크롤은 뷰포트의 높이를 초과하여 사용자가 페이지 바닥 글에 액세스하는 것을 방지합니다.



를 제한하려면 CSS와 JavaScript Teches를 활용할 수 있습니다. "Max-Height"속성 사용. 이것은지도에 도달 할 수있는 최대 높이를 설정하여 부모 요소의 높이를 초과 할 수 없도록합니다.

map {

max-height : 500px; 그에 따라 위치. jQuery 's ".animate ()"메소드를 사용하는 대신, 우리는 성능 이유에 대한 직접 CSS 조작을 선택합니다.



$ (Window) .scroll (function () {

var scrollval = $ (this) .scrolltop (). {

$ ( "#map"). css ({ margintop : (scrollval - $ ( "#sidebar"). offset (). top) "px" });

} else {

$ ( "#map"). css ({{ Margintop : "0px" });
$("#map").css({
  marginTop: (scrollVal - $("#sidebar").offset().top)   "px"
});
}

});

$("#map").css({
  marginTop: (scrollVal - $("#sidebar").offset().top)   "px"
});






$("#map").css({
  marginTop: (scrollVal - $("#sidebar").offset().top)   "px"
});
접근 :

$("#map").css({
  position: "static"
});

$ ( "#map"). css ({ 위치 : "고정", 상단 : "0px" });

} else {

$ ( "#map"). css ({{ 위치 : "정적" });

} How to Limit Scrolling Range of an Element Within a Dynamically-Sized Parent Element? 
});

이 경우 고정 높이로 남아 있다고 가정 할 때 헤더 높이를 참조 점으로 사용합니다. 스크롤 위치가 헤더 높이를 초과하면 맵의 위치를 ​​뷰포트 상단에 고정합니다. 이 접근법은 뷰포트의 높이 내에 남아있는 동안 맵이 적절한 시간에 시야를 두 스크롤 할 수 있도록합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3