0

我无法用标记将地图居中,这是 b*:

           <iframe
          width="555"
          height="450"
          frameborder="0" style="border:0"
          src="https://www.google.com/maps/embed/v1/place?key=***&q=<? echo urlencode($address); ?>&zoom=14">
        </iframe>

地图加载,但标记位于屏幕左上方,因此用户必须使用鼠标才能真正将所需区域放置在屏幕上。

有人知道如何将地图与标记位置居中吗?

很抱歉重复的问题,但到目前为止我看到的答案对我的情况不起作用。

4

1 回答 1

0

可悲的是,我无法使它与 iframe 一起使用,而是我使用了 JS 方式...

JS:

geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(40.730885,-73.997383);
var mapOptions = {
    scrollwheel: true,
    zoom: 15,
    center: latlng,
    mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map"), mapOptions );

var address = 'address string';
geocoder.geocode(
{ 'address': address},
function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
        map.setCenter(results[0].geometry.location);

        var latitude = results[0].geometry.location.lat();
        var longitude = results[0].geometry.location.lng();

        marker = new google.maps.Marker({
            draggable: true,
            map: map,
            position: results[0].geometry.location
        });
    } else {
        //alert('Location not found.');
    }
}
);

HTML:

        <div id="map-canvas">
            <div id="map" style="width:555px;height:450px;"></div>
    </div>
    <script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=true"></script>

我正在避免使用原因导致页面加载时CSS显示为空的另一个问题......但这已经解决(没有理由解释问题中没有涉及原因^^“)。

无论如何,如果有人找到 iframe 示例的解决方案,仍然会很有趣......但这就是所有人 o/

于 2014-05-19T17:21:05.873 回答