我正在使用jquery / Javascript循环标记及其存储在数据库中的信息。但是,除了这些标记之外,我还想在地图上使用默认标记,因为这个标记非常不同(列数较少),因此我不确定如何扩展现有逻辑以包含硬编码标记。基本上,额外的标记应该看起来像这样(到目前为止没有用,标记没有显示):
其他标记:
public class MyTable
{
[PrimaryKey, AutoIncrement]
public int Id { get; private set; }
public MySerializable MySerValues { get; private set; }
}
完整代码(不含其他标记):
var myLatLng = {lat: -25.363, lng: 131.044};
var additionalmarker = new google.maps.Marker({
position: myLatLng,
map: lmap,
title: 'Additional Marker!'
});
答案 0 :(得分:1)
循环似乎是正确的地方
for (var i=0; i<lMarkerCount; i++) {
var oMarkerLocation = oLocations.gps[1].marker[i];
var lLat = oMarkerLocation.lat;
var lLng = oMarkerLocation.lng;
/* new Marker Position */
var lMarker = new google.maps.Marker({
position: new google.maps.LatLng(lLat, lLng),
animation: google.maps.Animation.DROP,
map: lMap
});
/* check custom Marker Image in GPS Data*/
var lGpsImg = oMarkerLocation.img;
var lParImg = lParameter.marker_icon;
if (lGpsImg && lGpsImg.length != 0) {
var lMarkerImage = new google.maps.MarkerImage(lGpsImg);
}
else {
/* no custom image in GPS data but maybe in the parameters? */
if (lParImg && lParImg.length != 0) {
var lMarkerImage = new google.maps.MarkerImage(lParImg);
} else {
lMarkerImage = "";
}
}
if (lMarkerImage && lMarkerImage.length != 0) {
lMarker.setIcon(lMarkerImage);
}
google.maps.event.addListener(lMarker, 'click', (function(lMarker, i) {
return function() {
infowindow.setContent(oLocations.gps[1].marker[i].name);
infowindow.open(lMap, lMarker);
}
})(lMarker, i));
}
var myLatLng = {lat: -25.363, lng: 131.044};
var additionalmarker = new google.maps.Marker({
position: myLatLng,
map: lmap,
title: 'Additional Marker!'
});