0

私はたくさんの例を読みました。彼らはすべて、オーバーレイを非表示にすることについて言及しています

overlay.setMap(null);

それはうまくいきます。ただし、初期化中に表示されますが、以前に非表示にした後で再度表示すると機能しません。すべての例は、使用するように教えてくれます

overlay.setMap(map);

しかし、オーバーレイは再表示されません?! なにが問題ですか?

http://jsbin.com/oworor/3/editで私のコードを参照してください。

MJ

4

1 に答える 1

1

「map」変数はmapInitialize関数に対してローカルであり、以下を変更します。

        function mapInitialize() {
            var myLatlng = new google.maps.LatLng(47.72, 13.48);
            var myOptions = {
                zoom: 13,
                center: myLatlng,
                mapTypeId: google.maps.MapTypeId.TERRAIN
            }
            var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

に:

        function mapInitialize() {
            var myLatlng = new google.maps.LatLng(47.72, 13.48);
            var myOptions = {
                zoom: 13,
                center: myLatlng,
                mapTypeId: google.maps.MapTypeId.TERRAIN
            }
            map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
于 2012-07-12T11:20:55.070 に答える