2016-12-04 29 views
1

私はセシウムを介してol3-cesiumを使用したマップを持っています。この地図はウェブサイトの全領域を使用していません。スクロールホイールのズームを無効にしようとしているので、マウスのスクロールホイールでウェブページを上下にスクロールし続けることができます。セシウムのマウススクロールホイールを無効にする

私はとズームマウスのスクロールホイールを無効にすることができます

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

これはすばらしい回避策です。ありがとうございます。ブラウザのスムーズなスクロールに比べて少しばれているように見えますが、より自然なソリューションがなければこのトリックを行います。 –

関連する問題