我正在寻找一种方法来重新定位(聚焦)地图,如果标记在地图之外.例如,如果您点击不在您的视野中的标记...标记1:纽约标记2:SanFransisco
在V2我这样做...但对于v3,containsLatLng需要一个额外的库并且对我不起作用...(参见我的另一篇文章: Google Maps v3 map.getBounds().containsLatLng不是函数)是他们任何其他方式聚焦到标记位置?
更新:
if ((!map.getBounds().contains(marker.getPosition())) & (showAllCategoryElements == 0)) {
var newCenterPointLng = (map.getBounds().getCenter().lng() + marker.getPosition().lng()) / 2;
var newCenterPointLat = (map.getBounds().getCenter().lat() + marker.getPosition().lat()) / 2;
map.panTo(marker.getPosition());
//map.setCenter(new google.maps.LatLng(newCenterPointLat, newCenterPointLng));
if (!map.getBounds().contains(marker.getPosition())){
map.zoomOut();
}
}
Run Code Online (Sandbox Code Playgroud) google-maps google-api google-maps-api-3 google-maps-markers google-maps-api-2
我知道他们是从v2到v3的一些问题我能在这里做些什么来修复它?
v3不支持GIcon?
// Google-Map icon object
var gMapIcon = new GIcon(G_DEFAULT_ICON); //change to new google.maps.MarkerImage();???
// does icon exist
if ( mapElements[lMapElementIndex]['icon'].toString().length > 0) {
gMapIcon.image = html_entity_decode(mapElements[lMapElementIndex]['icon']);
gMapIcon.shadow = "";
iconHeight = mapElements[lMapElementIndex]['iconheight'];
iconWidth = mapElements[lMapElementIndex]['iconwidth'];
gMapIcon.iconSize = new GSize(iconWidth,iconHeight);
gMapIcon.iconAnchor = new GPoint(0,0);
gMapIcon.infoWindowAnchor = new GPoint(15,10);
}
var markerOptions = {
icon: gMapIcon //change to image?
};
var marker = new google.maps.Marker(point,markerOptions);
Run Code Online (Sandbox Code Playgroud)
从这里找到https://developers.google.com/maps/documentation/javascript/overlays?hl=de-DE#SimpleIcons
感谢您的帮助或提示!
google-maps google-api google-maps-api-3 google-maps-markers google-maps-api-2
这是将add Overlay更改为v3的正确方法吗?在V3中,不推荐使用addOverlay ...并用setMap替换?
if (setContainerVisible == 1) {
mapElements[lMapElementIndex]['visible'] = 1;
//map.addOverlay(marker); v2
marker.setMap(marker); // v3 ??
}
Run Code Online (Sandbox Code Playgroud)
欲了解更多信息,请访问http://pastebin.com/w1nm0W75(行:507)
google-maps google-maps-api-3 google-maps-markers google-maps-api-2
我需要使用"IN"语句从我的数据库中选择用户,如:
SELECT *
FROM users
WHERE user_id IN ("20,24,23,26,27,28,25")
Run Code Online (Sandbox Code Playgroud)
...这有效但我需要我的输出正好这个顺序(20,24,23,26,27,28,25).PHP通过DESC或ASC订购ID ...我该如何解决这个问题?