다음은 현재 상황입니다.일시적으로 스크롤 가능한 div가 스크롤되지 않도록하려면 어떻게해야합니까?
스크롤 가능한 div 몇 개가 포함 된 웹 페이지가 있습니다. 각 div에는 여러 개체가 포함되어 있습니다. 각 객체에서 수행 할 수있는 작업의 팝업 메뉴를 표시하기 위해 YUI를 사용하고 있습니다. 각 객체에는 동적으로 생성되고 표시되는 관련 메뉴가 있습니다. 팝업 메뉴는 크고 스크롤 가능한 div의 경계를 겹칠 수 있습니다.
포커스가있는 문제 (메뉴에 액세스 할 수 있어야 함)에서 스크롤 가능한 div 가장자리에 마우스를 올려 놓으면 div가 자동으로 스크롤되어 내용이 이동하지만 움직이지 않는 메뉴. 이런 일이 생길 때 동적으로 메뉴를 이동하려고하면 좋지 않은 사용자 경험을 제공 할 것이라고 생각하면서 내가하고 싶은 일이 아닙니다.
그래서이 초점 메뉴에서 div를 스크롤하지 못하게해야합니다. 최상의 사용자 인터페이스를 제공하려는 나의 아이디어는 메뉴가 열려있을 때 이러한 내부 div가 스크롤되지 않도록하는 것입니다. 이렇게하면 메뉴가 최적의 위치에 배치되어 사용자에게 어떤 항목이 적용되는지 표시됩니다. 사용자가 상자를 스크롤하려면 클릭하여 메뉴를 닫은 다음 정상적으로 스크롤하십시오.
어떻게하면됩니까? 주요 브라우저에서 작동하는 솔루션이 필요합니다.
저의 첫 번째 생각은 특정 요소에 대해 이벤트를 onscroll 수신하는 것입니다. 불행히도 스크롤링이 발생하는 것을 막기위한 쉬운 방법이없는 것처럼 보입니다. 하나 들어, 내 자바 이벤트 코드는 실제 스크롤이 발생한 후에 실행하는 것으로 보입니다.
그럼, 객체가 스크롤 한 후 내 코드가 실행되고 있기 때문에, 난 그냥 obj.scrollTop 및 obj.scrollLeft를 재설정 할 수 있다고 생각했다. 물론 느린 브라우저에서 사용자가 div 내부의 내용을 "주위를 뛰어"볼 수 있을지는 모르지만이 방법이 효과가있는 것으로 보입니다. 또한 요소가 스크롤하는 양이 이벤트 객체의 일부인 경우 정말 좋습니다. 어딘가에 거기 붙어 있니? 이 요소에 대한 scrollTop 및 scrollLeft 변수를 저장 한 다음 스크롤을 일시적으로 사용하지 않도록 설정하는 대신 사용할 수있는 대안을 찾고 있습니다.
이 전체 문제를 해결하는 가장 좋은 방법은 무엇입니까?
왜이 작업을 수행 하시겠습니까? 유용성 악몽처럼 들리 네요. 사용법의 맥락을 설명해 주시겠습니까? – Rahul
내 생각 엔 EU가 이용 약관이나 라이선스 계약을 읽도록 강제하는 것입니다. –
@Rahul 내가 뭘하려고하는지 더 자세한 정보로 내 질문을 업데이트했습니다. 그것은 총체적인 상황이고 이것이 이것을 처리하는 가장 좋은 방법이라고 생각합니다. –