我有一个基于谷歌地图的网站(使用 gmap3),它上面有标记和一个浮动小部件,其中包含有关活动标记的文本。这个浮动小部件占据了大约一半的屏幕。地图会自动居中(或平移到)活动标记。
从上面可以看出,屏幕中心的活动标记非常靠近文本小部件的右侧(几乎覆盖了屏幕的所有左侧)。我想让它更松散——比如说,不是在屏幕的中心,而是从左边大约 2/3 和从右边大约 1/3 (当然是水平的;垂直它应该保持居中)。
换句话说,我想要以下内容:当一个新标记被选择为活动时,地图应该平移到这样的位置,即这个标记距离屏幕右侧大约 1/3 的屏幕宽度。
更改地图中心的纬度无济于事,因为这应该适用于任何缩放级别。我需要类似“panTo (width: 66%; height:50%)”的东西(当然,这不是真正的代码)。
先感谢您。
( function($){
var $et_main_map = $( '#et_main_map' );
et_active_marker = null;
$et_main_map.gmap3({
map:{
options:{
<?php
while ( have_posts() ) : the_post();
$et_location_lat = get_post_meta( get_the_ID(), '_et_listing_lat', true );
$et_location_lng = get_post_meta( get_the_ID(), '_et_listing_lng', true );
if ( '' != $et_location_lat && '' != $et_location_lng )
printf( 'center: [%s, %s],', $et_location_lat, $et_location_lng );
break;
endwhile;
rewind_posts();
?>
zoom: <?php
if ( is_home() || is_front_page() )
echo esc_js( et_get_option( 'explorable_homepage_zoom_level', 3 ) );
else
echo esc_js( et_get_option( 'explorable_default_zoom_level', 5 ) ); ?>,
mapTypeId: google.maps.MapTypeId.<?php echo esc_js( strtoupper( et_get_option( 'explorable_map_type', 'Roadmap' ) ) ); ?>,
mapTypeControl: false,
mapTypeControlOptions: {
position : google.maps.ControlPosition.LEFT_CENTER,
style : google.maps.MapTypeControlStyle.DROPDOWN_MENU
},
streetViewControlOptions: {
position: google.maps.ControlPosition.LEFT_CENTER
},
navigationControl: true,
scrollwheel: false,
streetViewControl: false,
zoomControl: true,
zoomControlOptions: {
position: google.maps.ControlPosition.RIGHT_BOTTOM,
style: google.maps.ZoomControlStyle.SMALL
},
}
}
});