ユーザーがマップ上を移動したときにデフォルトのGoogleマップコントロールを表示するにはどうすればよいですか?それ以外の場合は、コントロールを非表示にしたいと思います。ホバー上にGoogleマップのコントロールを表示する
0
A
答えて
3
マップのsetOptionsメソッドを使用して、コントロールを表示または非表示にすることができます。表示/非表示にするすべてのcontrolOptionsを持つオブジェクトを引数として渡し、コントロールの値をtrueまたはfalseに設定します。
mouseoutとmouseoverのイベントリスナーをマップに追加し、そこでオプションを設定します。
例:
//the controls you want to hide
var controlsOut={
mapTypeControl:false,
zoomControl:false,
panControl:false,
streetViewControl:false
};
//create a copy of controlsOut and set all values to true
var controlsIn={};
for(var c in controlsOut)
{
controlsIn[c]=true;
}
//initially hide the controls
map.setOptions(controlsOut)
//add listeners to show or hide the controls
google.maps.event.addDomListener(map.getDiv(),
'mouseover',
function(e)
{
e.cancelBubble=true;
if(!map.hover)
{
map.hover=true;
map.setOptions(controlsIn);
}
});
google.maps.event.addDomListener(document.getElementsByTagName('body')[0],
'mouseover',
function(e)
{
if(map.hover)
{
map.setOptions(controlsOut);
map.hover=false;
}
});
0
これは、マップコントロールはホバーのみのことについて唯一の問題についてのようです。上記の答えは私のためにはあまり効果がありませんでしたので、私自身の変更を文書化したいと考えました。
// dom is the enclosing DOM supplied to new google.maps.Map
// controlsIn and controlsOut are hashes of options to set
// when the mouse enters or exits.
$(dom).mouseenter(function(evt) {
if (!map.hover) {
map.hover = true
map.setOptions(controlsIn)
}
});
$('body').mouseover(function(evt) {
if (map.hover) {
if ($(evt.target).closest(dom).length == 0) {
map.hover = false
map.setOptions controlsOut
}
}
});
関連する問題
- 1. Googleマップ上のツールバーを表示
- 2. Googleマップの右上にGoogleマップの情報ウィンドウを表示したい
- 3. Googleストリートビュー:「Googleマップで表示」のリンクを非表示にする
- 4. Googleマップ上の国々に異なる色のマーカーを表示
- 5. 表示Googleマップ
- 6. リアクションのホバー上にコンポーネントを表示
- 7. アンカータグのホバー上にドロップダウンメニューを表示
- 8. OpenLayers 3:ホバー上にベクターラベルを表示
- 9. Googleマップを非表示にする
- 10. Googleマップのトラックナビゲーションを表示
- 11. ステップバイステップ表示Googleマップ
- 12. ホバー上にテキストを表示せずに画像を表示
- 13. NSWindowのホバー上に表示ボタンを表示
- 14. OSX上のWebViewに表示されたGoogleマップの上にサブビューを描画
- 15. ホバー上の行全体をハイライト表示
- 16. Googleマップの住所を表示する
- 17. トランスペアレントローディングスピナーを他のコントロールの上に表示
- 18. GoogleマップV3にマッチするオートズーム表示
- 19. ホバーリンクまたはテキスト上にGoogleマップを表示
- 20. CSSを表示すると、他のオブジェクトの上にホバーが表示される
- 21. Googleマップapiとlaravelを使用してマップ上にgpxファイルを表示
- 22. jqueryでホバー上のdivに画像を表示するには?
- 23. Googleマップは小さな画面でコントロールを非表示にします
- 24. Googleマップをアンドロイドウェブビューで表示
- 25. Googleマップでデータポリゴンを表示
- 26. Googleマップでポリラインを表示
- 27. cfwindowでGoogleマップを表示
- 28. Googleマップのジッバーリ表示
- 29. 角度のGoogleマップ表示
- 30. GoogleマップStreetViewPanoramaの表示エラー
crossborders.tv/client/frisbieをご覧になれますか?下の連絡先までスクロールしてください。私はあなたのコードを働かせることができません.. – user1215071
この行のすぐ上に上記のコードを入れてください: 'map.mapTypes.set(frisbieMapID、mapType); '、私のために働く。 –
ありがとう!それは働いた! – user1215071