2016-12-04 5 views
1

세슘을 사용하여 세슘을 사용하는지도가 있습니다. 이지도는 웹 사이트의 전체 공간을 사용하지 않습니다. 스크롤 휠을 사용하지 않도록 설정하려고합니다. 마우스 스크롤 휠을 사용하여 웹 페이지를 위아래로 스크롤 할 수 있습니다.세슘에서 마우스 스크롤 휠을 사용하지 않음

나는 함께 확대 마우스 스크롤 휠을 사용하지 않도록 설정할 수 있습니다 :

map3d.getCesiumScene().screenSpaceCameraController.enableZoom = false; 

을하지만, 일반 페이지 스크롤을 날 다시 가져 오지 않습니다. 스크롤링 이벤트는 세슘에 포획되어 전파되지 않은 것 같습니다.

세슘이 마우스 스크롤 휠을 무시하거나 브라우저로 전파하면 어떻게하면 커서가지도 상단에 있더라도 페이지를 스크롤 할 수 있습니까?

답변

1

트릭을해야합니다. 세슘 컨테이너에서 휠 이벤트를 듣고 발생하면 창을 스크롤하십시오.

var pageStep = 25; 
document.getElementById('yout-cesium-container-id').addEventListener("wheel", function(event) { 
    if (event.deltaY < 0) { 
     window.scroll(0, window.pageYOffset - pageStep); 
    } else { 
     window.scroll(0, window.pageYOffset + pageStep); 
    } 
}); 

세슘에서 확대/축소를 비활성화해야합니다.

map3d.getCesiumScene().screenSpaceCameraController.enableZoom = false; 
+0

멋진 해결 방법입니다. 감사합니다. 브라우저의 매끄러운 스크롤링에 비해 조금 고르지는 않지만, 더 원시적 인 솔루션이 없다면 트릭을 할 것입니다. –