2016-12-04 165 views
1

我有一張使用銫通過ol3-ces的地圖。該地圖不使用網站的全部空間。我正在嘗試禁用滾輪縮放功能,以便使用鼠標滾輪可以不斷滾動瀏覽網頁。然而在銫中禁用鼠標滾輪

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

,不給我帶回正常的頁面滾動:

我可以禁用鼠標滾輪縮放用。滾動事件似乎被Cesium捕獲,並沒有傳播。

如何讓Cesium忽略或傳播鼠標滾輪到瀏覽器,以便用戶可以滾動頁面,即使光標位於地圖上方?

回答

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

這是一個很好的解決方法,謝謝。與瀏覽器的平滑滾動相比,它看起來有點波動,但它會在沒有更原生的解決方案的情況下做到這一點。 –