cloudmade と leaflet プラグインを使用してマップを作成しました。マーカーを設定しました。私の目的は、場所の 3 つのリンクを持つ独自のコントロール パネルを作成することです。リンク (例: London) をクリックすると、保存されているロンドンの緯度経度にパンし、他の 2 つについても同様です。私が持っているコードはマップをロードしますが、コンテナが消え、コンソールに次のエラーメッセージが表示されます: "Mycontrol.appendhild(link);- Mycontrol is not defined. This still does not work when it is defined.
1) 私はこれで正しいルートにいますか? 2)例やチュートリアルでこれを機能させるための助けは素晴らしいでしょう
ありがとう。
ここにコードのスニペットがあります
[コード]
[Cloudmade API Key and URL]
[Leaflet ICON Properties]
[Leaflet MARKERS]
[Leaflet toggle styles]
//CONTROL
var MyControl = L.Control.extend({
options: {
position: 'topright'
},
onAdd: function (map, position) {
// create the control container
var container = L.DomUtil.create('div', 'my-custom-control');
// ... initialize other DOM elements, add listeners, etc.
function createMapLink(location, zoom, name) {
var link = document.createElement('a');
link.href = '';
link.innerHTML = "Go to " + name;
link.onclick = function() {
map.setCenter(location, zoom);
return false;
}
Mycontrol.appendChild(link);
}
createMapLink(new L.LatLng(lat,lon), 11, 'Location1');
createMapLink(new L.LatLng(lat,lon), 11, 'Location2');
createMapLink(new L.LatLng(lat,lon), 11, 'Location3');
return container;
}
});
map.addControl(new MyControl());
L.control.layers(baseMaps, overlayMaps, MyControl).addTo(map);
[/コード]