2017-05-11 6 views
0

ちょっと私のプロジェクトでマップを作成しようとしています。私はGoogleマップは、Googleからの私のAPI_KEYを得た。その後GoogleマップAPIは、開発ツールが開いているときにのみ動作します。

enter image description here2

作業が、マーカーされて... ...私は、コンソールにはエラーを持っていないが、私はGoogleのChromeで開発者ツールを開くまで、doesntの表示は何もマップまだコンソールにエラーはありません。

enter image description here

私が間違って何をやっていますか?

スタイル:

#map { 
width: 100%; 
height: 300px; 
background-color: grey; 
} 

コード:

<div id="map"></div> 
<script> 
    function initMap() { 
    var myLatLng = {lat: -0.250608, lng: 52.025528}; 

    var map = new google.maps.Map(document.getElementById('map'), { 
    zoom: 4, 
    center: myLatLng 
    }); 

    var marker = new google.maps.Marker({ 
     position: myLatLng, 
     map: map, 
     title: 'Title!' 
    }); 
    } 
</script> 
<script async defer 
    src="https://maps.googleapis.com/maps/api/js?key=MYKEY&callback=initMap"> 
</script> 

答えて

2

表示されていないか次元がないコンテナ内のマップを初期化しています。

オープニングのdevのツールマップ自体のサイズを変更する原因となるブラウザのサイズ変更をトリガー**

あなたはいずれかの方法でそれを修正することができます。

どちらかそれはコンテナになるまでマップを初期化するために待って

見えます

またはgoogle.maps.event.trigger('resize',map)mapは のマップインスタンスです)が表示されます。

**これが起こっていることを証明する:開発ツールをドッキングして浮動ウィンドウにします。その後、あなたのページを(devツールを閉じて)更新し、地図を見に失敗した後に再びdevのツールを開くが、あなたのブラウザがサイズ変更されていないためにまだ表示されません(あなたの開発ツールが浮かんでいて、ドッキングされていないため)

+0

はいアダムですね... google.maps.event.trigger(マップのサイズを変更する)の使い方を今すぐ把握する必要があります...お気軽に – Maria

+1

@Maria - ユーザーは[お問い合わせ先]タブをクリックします。おそらくDOM要素のクラスを追加/削除して正しいタブを表示します。 DOMクラスを追加/削除した直後に、 'google.maps.event.trigger( 'resize'、map)'を呼び出してください。また、 'initMap'関数の外側で' var map; 'を宣言してください – Adam

1

あなたがマップのAPIを使用するためにGoogleとあなたのURL /ドメインを登録してくださいましたかhttps://developers.google.com/maps/premium/previous-licenses/clientside/auth#register-urls

+0

いいえそれは私が知っていることさえ知りませんでした...私は現地で働いていますが、それは問題ですか? – Maria

+0

Dev Toolsを開いたときにのみ表示されていると100%確信していませんか?あなたのAPIキーの認証問題であれば、https://developers.google.com/maps/premium/previous-licenses/articles/troubleshooting-authをご覧ください – Woodrow

+0

私は開発ツールを開いたときにはいが動作していますが、私は認証問題があるかどうか見てください – Maria

関連する問題