2012-01-06 6 views
1

div를 스크롤하여 슬라이드 쇼의 다음 사진을 표시하는 슬라이드 쇼를 재생했습니다. 또한 마우스가 비활성 상태 일 때 사진 설명을 숨기고 마우스가 움직일 때 설명을 표시하는 기능을 설정했습니다.웹킷 mousemove 이벤트가 예기치 않게 발생합니다 (마우스가 움직이지 않음)

Firefox에서는 문제가 없으며 div는 새 사진으로 스크롤하고 mousemove 이벤트는 실행되지 않습니다. 그러나 창에서 마우스를 사용하는 Webkit에서는 비활성이지만 div가 새 사진으로 스크롤 할 때마다 2 ~ 3 개의 mousemove 이벤트가 발생합니다.

다음은 웹 사이트입니다. Webkit 브라우저에서 포트폴리오 페이지로 이동하고 (콘솔을 연 상태로), 사진이 순환되는 동안 바닥 글이 숨겨져 있어야합니다. http://96.0.13.132/

+0

나중에 참조 할 수 있도록 웹 사이트를 먼저 게시해야 궁금한 시간에 투표가 종료되지 않습니다. –

답변

13

네, 웹킷 브라우저는 그렇게하며, 모든 브라우저는 그렇다고 생각합니다. 스크롤 후 다른 위치에 커서가 있기 때문에 개발자로서 많은 문제를 피할 수 있습니다.

어쨌든 스크립트에서 그 결과를 피하려면 최신 clientX 및 clientY 위치를 기록하고 마지막 "mousemove"이후 변경된 위치가 있는지 확인하십시오.

window.addEventListener("mousemove",function(e){ 
    if(window.lastX !== e.clientX || window.lastY !== e.clientY){ 
     // Code when the (physical) mouse actually moves 
    } 
    window.lastX = e.clientX 
    window.lastY = e.clientY 
}) 
+0

이반, 정말 고마워, 그게 내가 필요한거야! – curiouser