我想通過Google地圖v3獲得與Pinterest地圖(例如www.pinterest.com/airbnb/loved-by-parisians/)相同的效果。谷歌地圖v3像Pinterest地圖(移動中心位置和更改標記區域)
到目前爲止,我已經來到了這個:http://jsfiddle.net/tdff3/9xEEG/
我得到一個缺少的東西: 移動中心的地圖位置和改變標記可見區域的權利,對於不同分辨率的工作響應。
現在:
我想要什麼:
function initialize()
{
var mapOptions =
{
zoom: 8,
center: new google.maps.LatLng(-33.9, 151.2),
disableDefaultUI: true,
zoomControl: true,
zoomControlOptions:
{
style: google.maps.ZoomControlStyle.SMALL,
position: google.maps.ControlPosition.RIGHT_BOTTOM
},
scrollwheel: false
};
var map = new google.maps.Map
(
document.getElementById('map-canvas'),
mapOptions
);
var beaches =
[
[ 'Bondi Beach', -33.890542, 151.274856, 4 ],
[ 'Coogee Beach', -33.423036, 151.259052, 5 ],
[ 'Cronulla Beach', -34.028249, 121.157507, 3 ],
[ 'Manly Beach', -33.80010128657071, 151.28747820854187, 2 ],
[ 'Maroubra Beach', -33.450198, 151.259302, 1 ]
];
setMarkers(map, beaches);
}
function setMarkers(map, locations)
{
var bounds = new google.maps.LatLngBounds();
for(var i = 0; i < locations.length; i++)
{
var beach = locations[ i ];
var myLatLng = new google.maps.LatLng(beach[ 1 ], beach[ 2 ]);
var marker = new google.maps.Marker(
{
position: myLatLng,
map: map,
title: beach[ 0 ],
zIndex: beach[ 3 ]
});
bounds.extend(myLatLng);
}
map.fitBounds(bounds);
}
function loadScript()
{
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&' +
'callback=initialize';
document.body.appendChild(script);
}
window.onload = loadScript;
對於你所問的問題感到困惑,你想移動地圖(將div覆蓋在頂部),並確保標記始終可見? – Swires
是的。我想要在地圖右側的所有標記,並讓左側沒有任何標記,僅在頁面加載時,避免覆蓋div上的任何可見標記。 此右側有一個動態寬度,具體取決於屏幕分辨率。 – user3252384