【发布时间】:2015-07-30 08:49:22
【问题描述】:
以下 html 脚本按计划绘制指定的地图图块和标记。但是,标记的大小是相同的。如何绘制具有“平面”列表中第 3 项和第 4 项中指定大小的标记?这样我可以根据某些属性区分不同的标记。
<!DOCTYPE html>
<html>
<head>
<title>Simple Leaflet Map</title>
<meta charset="utf-8" />
<link
rel="stylesheet"
href="http://cdn.leafletjs.com/leaflet-0.7/leaflet.css"
/>
</head>
<body>
<div id="map" style="width: 600px; height: 400px"></div>
<script
src="http://cdn.leafletjs.com/leaflet-0.7/leaflet.js">
</script>
<script>
var planes = [
["7C6B07",-40.99497,174.50808, 5, 5],
["7C6B38",-41.30269,173.63696, 10, 10],
["7C6CA1",-41.49413,173.5421, 15, 5],
["7C6CA2",-40.98585,174.50659, 15, 15],
["C81D9D",-40.93163,173.81726, 20, 5],
["C82009",-41.5183,174.78081, 20, 10],
["C82081",-41.42079,173.5783, 5, 15],
["C820AB",-42.08414,173.96632, 5, 9],
["C820B6",-41.51285,173.53274, 7, 12]
];
var map = L.map('map').setView([-41.3058, 174.82082], 8);
mapLink =
'<a href="http://openstreetmap.org">OpenStreetMap</a>';
L.tileLayer(
'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: '© ' + mapLink + ' Contributors',
maxZoom: 18,
}).addTo(map);
for (var i = 0; i < planes.length; i++) {
marker = new L.marker([planes[i][1],planes[i][2]], {iconSize: [planes[i][3], planes[i][4]]})
.bindPopup(planes[i][0])
.addTo(map);
}
</script>
</body>
</html>
【问题讨论】: