Карты виртуальной Земли не отображаются при запуске в качестве дисплея: нет - PullRequest
0 голосов
/ 08 мая 2009

У меня есть этот код для отображения карты с использованием Virtual Earth API:

<script type="text/javascript">
        function GetMap() {
        var map = map = new VEMap('myMap');
        map.LoadMap(new VELatLong(47.6, -122.33), 10, 'h', false);
    }

    $(document).ready(function() {
        GetMap();
    });
</script>

<a href="#" onclick="$('#myMap').toggle();">Show Map</a>
<div id="myMap" style="position:relative; width:400px; height:400px; display:none;"></div>

Это не работает, и отображает черный ящик, куда должна идти карта. Если я уберу "display: none;" стиль, то это работает просто отлично. Но я не хочу, чтобы карта была видна при загрузке страницы, я хочу, чтобы пользователь переключал ее. Может ли кто-нибудь увидеть что-то не так с моим подходом?

Ответы [ 2 ]

3 голосов
/ 09 мая 2009

Возможно, карта должна отображаться при инициализации. Это происходит особенно, если карта должна измерить размеры контейнера, чтобы правильно отобразить.

Либо поступите так, как Диоды предложили переместить карту из визуальной области (вы также можете установить видимость на false), либо инициализируйте карту, когда вам действительно придется ее показывать.

2 голосов
/ 08 мая 2009

Кроме того, вы можете переместить его за пределы экрана, с помощью left:-2000px.

...