2013-09-20 9 views
0

Я пытаюсь использовать API, который включает в себя Листовку. Идея состоит в том, чтобы размещать точки интересов на карте.Пользовательские маркеры с использованием Листовки

В этой скрипке вы можете увидеть, что я пытаюсь выполнить: fiddle. Проблема, с которой я сталкиваюсь, заключается в том, что когда я пытаюсь добавить пользовательский значок, масштабирование и привязка не сработают. По какой-то причине значки по умолчанию размещены правильно на карте, и я понятия не имею, почему они не подрываются.

Весь мой код примерно такой же, как скрипку для этих частей, за исключением:

Ниже вы можете увидеть, как я сделать пользовательский значок:

var waypoint = L.icon({ 
    iconUrl: 'waypoint.png',   
    //iconSize: [30, 30], // size of the icon  
    iconAnchor: [0, 0] // point of the icon which will correspond to marker's location  
}); 

А вот ниже вы можете увидеть, как я добавить значки в маркерах:

L.marker(unproject(poi.coord), { 
        title: poi.name, 
        icon: waypoint 
       }).addTo(map); 

Update: Ниже вы можете увидеть разницу:

Image

Что мне не хватает?

+0

Я видел вашу скрипку. Все выглядит правильно. Я изменил код и добавил вашу путевую точку в качестве значка, и масштабирование все еще отлично работает. – zaerymoghaddam

+0

Могу ли я быть, что мой Wrapper div или Css возится со мной? – Jan

+0

Возможно, я не знаю. Например, как указано в документации Leaflet, вы должны явно указать ширину контейнера div. В коде может быть что-то вроде этого, что конфликтует с масштабированием или привязкой функций. – zaerymoghaddam

ответ

0

Вы сказали, что используете API, который включает в себя Листовку. Как я уже видел на вашей скрипке, все работает нормально. Если вы используете API-интерфейс обертки, возможно, это причина вашей проблемы.

+0

Я исправил его. Проверьте мой вопрос на мою ошибку. Большое спасибо за вашу помощь! – Jan

0

(Опубликовано от имени ОП.)

ОК, мне удалось это исправить.

Это то, что я сделал неправильно, я извлек внешние ресурсы (.js и .css) и разместил их локально в моем проекте. Когда я добавил два в свой проект с таким URL-адресом:

<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.5.1/leaflet.js" type="text/javascript"></script> 

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.5.1/leaflet.css" type="text/css"> 

Все работало, как ожидалось.

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