2016-05-17 3 views
0

Ниже приведен HTML и javascript, которые я использую для загрузки карты в браузере. Я создал карту на Mabbox.org. Так листовка URL карты является:URL-адрес MapBox не работает

https://api.mapbox.com/styles/v1/johnmichel/ciobach7h0084b3nf482gfvvr/tiles/{z}/{x}/{y}?access_token=pk.eyJ1Ijoiam9obm1pY2hlbCIsImEiOiJjaW9iOW1vbHUwMGEzdnJseWNranhiMHpxIn0.leVOjMBazNl6v4h9MT7Glw 

Теперь я ставлю этот URL в функции Javascript называется Init(); Я последовал за этим http://leafletjs.com/examples/quick-start.html. Но когда я загружаю HTML, карт не появляется. Не могли бы вы мне помочь?

Javascript

function init(){ 

var map = L.map('map'); 

L.tileLayer('https://api.mapbox.com/styles/v1/johnmichel/ciobach7h0084b3nf482gfvvr/tiles/{z}/{x}/{y}?access_token=pk.eyJ1Ijoiam9obm1pY2hlbCIsImEiOiJjaW9iOW1vbHUwMGEzdnJseWNranhiMHpxIn0.leVOjMBazNl6v4h9MT7Glw', { 
    attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://mapbox.com">Mapbox</a>', 
    maxZoom: 18 
}).addTo(map); 

    map = L.map('map').setView([46.2, 2], 5); 
} 

HTML

<!DOCTYPE html> 
<html> 
<head> 

    <title></title> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> 
    <link rel="stylesheet" type="text/css" href="monstyle.css"> 
    <link rel="stylesheet" type="text/css" href="leaflet/leaflet.css"> 
    <script src="leaflet/leaflet.js"></script> 
    <script src="MonFichierJS.js"></script> 
</head> 
<body onload="init()"> 

<div id="map"></div> 

</body> 
</html> 

CSS

body { 
    padding: 0; 
    margin: 0; 
} 
html, body, #map { 
    height: 500px; 
width: 500px; 
} 
+0

Для целей тестирования, попробуйте дать вашей '# map' высоту в пикселях вместо% – chrki

+0

@chrki Как и ожидалось, он изменил размер DIV. Я выбрал 500 пикселей по высоте и ширине. Карта все еще не отображается (я вижу только кнопки масштабирования + и -). Я редактировал свой OP для изменения CSS –

ответ

2

Проблема была в JavaScript. Ниже приведен правильный код JS

function init(){ 

var map = L.map('map').setView([46.2, 2], 5); 

L.tileLayer('https://api.mapbox.com/styles/v1/johnmichel/ciobach7h0084b3nf482gfvvr/tiles/{z}/{x}/{y}?access_token=pk.eyJ1Ijoiam9obm1pY2hlbCIsImEiOiJjaW9iOW1vbHUwMGEzdnJseWNranhiMHpxIn0.leVOjMBazNl6v4h9MT7Glw', { 
    attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://mapbox.com">Mapbox</a>', 
    maxZoom: 18 
}).addTo(map); 

} 
Смежные вопросы