사용자가 특히 가로 스크롤 막대 또는 세로 스크롤 막대를 클릭했는지 여부를 결정하는 방법이 있습니까 (사용자가 드래그하는지 여부도 고려함) . 이 정보를 사용하여 내 웹 페이지에서 특정 작업을 수행 할 수 있기를 원합니다.내 웹 페이지에서 수직 또는 수평 스크롤 막대가 클릭 된 위치 결정
0
A
답변
0
FireFox의 빠른 테스트는 브라우저 자체에서 생성 된 스크롤 막대가 렌더링 된 HTML 또는 DOM의 일부가 아닙니다.
https://jsfiddle.net/Twisty/4ow21vp6/
$(function() {
$("*").click(function(e) {
console.log(e.target);
}).scroll(function(e) {
console.log(e.target);
});
});
그래서 당신은 클릭 이벤트가 트리거되지 않는 것을 볼 수 있습니다. 스크롤 바를 검사하기 위해 오른쪽 클릭을 허용하지도 않습니다. 따라서 이들에 대한 '클릭'을 탐지하는 것은 불가능합니다. 다른 이벤트가 도움이 될 수 있습니다.
0
스크롤 이벤트를 사용하여 스크롤 막대의 움직임을 감지하고 사용자가 위/아래/왼쪽/오른쪽으로 이동하는지 확인할 수 있습니다. 스택 오버플로
var lastScrollTop = 0;
var lastScrollLeft = 0;
$(window).scroll(function(event){
var st = $(this).scrollTop();
if (st > lastScrollTop){
// downscroll code
} else {
// upscroll code
}
lastScrollTop = st;
var documentScrollLeft = $(this).scrollLeft();
if (documentScrollLeft>lastScrollLeft){
// scroll right code
}else{
// scroll left code
}
});
에 오신 것을 환영합니다. 스크롤바에서 클릭 이벤트를 감지하려는 경우 또는 스크롤 막대를 이동 한 경우 명확하게 설명하십시오. – Twisty