Ние внедрихме контрол на слоевете, подобно на примера на Mapbox по-долу в нашето приложение. Работи чудесно, но бихме искали някои от слоевете по подразбиране да са били изключени. Някаква помощ?
Ето нашия код:
function displayLayerMaps(init_lat, init_lon, addr, parcel_data) {
//$("#layer-map").html("");
//$("#layer_map_ui").html("");
var $layers = $("#layer_map_ui").empty();
if (layer_map) {
layer_map.remove();
}
layer_map = L.mapbox.map("layer-map", "dirturban.k6hmjki6").setView([init_lat, init_lon], 22);
layer_map.scrollWheelZoom.disable();
//addLayer(L.mapbox.tileLayer("dirturban.7d1a3087"), "Parcels", 7, $layers, layer_map);
addLayer(L.mapbox.tileLayer("dirturban.84de85b4"), "Satellite View", 1, $layers, layer_map);
addLayer(L.mapbox.tileLayer("dirturban.460b53c7"), "Detailed Zoning", 2, $layers, layer_map);
addLayer(L.mapbox.tileLayer("dirturban.7adcb589"), "Incentive Zoning", 3, $layers, layer_map);
addLayer(L.mapbox.tileLayer("dirturban.c05e9c5a"), "Urban Village", 4, $layers, layer_map);
addLayer(L.mapbox.tileLayer("dirturban.b92c50a4"), "Pavement Edge", 5, $layers, layer_map);
addLayer(L.mapbox.tileLayer("dirturban.6fa753d7"), "Park Boundaries", 6, $layers, layer_map);
addLayer(L.mapbox.tileLayer("dirturban.e2744409"), "City Defined Trees", 7, $layers, layer_map);
// and parcels
addMarker(layer_map,init_lat,init_lon, addr, "small", "#cc0000");
И рендериран, изглежда така:
http://i.imgur.com/PiEP88v.jpg
Благодаря ти,
стив
Отговори:
0 за отговор № 1Просто създайте инстанция от L.mapbox.map
и употреба null
като mapid
параметър:
L.mapbox.accessToken = "pk.eyJ1IjoicGF1bC12ZXJob2V2ZW4iLCJhIjoiZ1BtMWhPSSJ9.wQGnLyl1DiuIQuS0U_PtiQ";
var map = L.mapbox.map("mapbox", null, {
"center": [0, 0],
"zoom": 0
});
След това създайте копия на картите, от които се нуждаете, и ги добавете към своя контрол, без да извикате .addTo
метод върху тях:
var layers = {
Streets: L.mapbox.tileLayer("examples.map-i87786ca"),
Outdoors: L.mapbox.tileLayer("examples.ik7djhcc"),
Satellite: L.mapbox.tileLayer("examples.map-igb471ik")
}
L.control.layers(layers).addTo(map);
Работен пример за Plunker: http://plnkr.co/edit/vGplMcA7bYBFeCXigUsj?p=preview
Кодекс, до голяма степен взет от: https://www.mapbox.com/mapbox.js/example/v1.0.0/toggle-baslayers/