2016-07-02 5 views
0

Вот код:Карта плитки не загружается, пока увеличение не выполняется (листовка)

mapLink = '<a href="http://openstreetmap.org">OpenStreetMap</a>'; 

var map = L.map('map').setView([25.7617,-80.18], 30); 
L.tileLayer(
'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { 
    attribution: '&copy; ' + mapLink + ' Contributors', 
    maxZoom: 18, 
}).addTo(map); 

Это не дает никаких ошибок, но она начинается как серый, если я не увеличить. Есть ли атрибут, который я пропускаю или что-то еще? Должна быть проблема с черепицей?

+1

Трудно сказать, так мало деталей ... Какая версия листовка вы используете? Как вы инициализируете карту и задаете начальный вид? Не могли бы вы поделиться больше кода и воспроизвести свою проблему на JSFiddle, Plunker или JSBin? – ghybs

+0

Lol это был неправильный код. Я исправил это извините. –

ответ

4

Когда вы установили первоначальный вид:

var map = L.map('map').setView([25.7617,-80.18], 30); 

вы запрашиваете уровень масштабирования ... 30 , что намного превышает то, что может обеспечить ваш уровень плитки (maxZoom: 18).

Как только вручную выполнить запрос масштабирования, листовка масштабирование обратно в пределах своего возможного зумирования, т.е. обратно 18.

Демы: http://jsfiddle.net/3v7hd2vx/30/

Просто установите первоначальный вид в пределах ваших возможных зумирования (т.е. меньше или равно 18 в вашем случае), и вы будете в порядке.

var map = L.map('map').setView([25.7617,-80.18], 10); 

Демо: http://jsfiddle.net/3v7hd2vx/31/

1

Я работал вокруг проблемы путем установки увеличения после слоя загружается с помощью:

map.setZoom(10); 
Смежные вопросы