所以想法是改变标记的“图标”属性。我对 javascript 不是很好,所以它真的让我发疯。我拥有的是一张地图,它初始化了一个空白的标记(没有图纸),然后我在 div 的左侧有一些选择。
我想要的是更改该特定实例的(标记)图标图形。
到目前为止,这是我的代码。我需要以某种方式附加一个侦听器,该侦听器根据我在地图之外的一些选项更改此图标图片。
<script type="text/javascript">
var zind = google.maps.Marker.MAX_ZINDEX;
var $map;
var $latlng;
var overlay;
function initialize() {
var $latlng = new google.maps.LatLng(<?php echo $model->lat; ?>, <?php echo $model->lon; ?>);
var myOptions = {
zoom: 16,
center: $latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU,
position: google.maps.ControlPosition.TOP_LEFT },
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_TOP
},
scaleControl: true,
scaleControlOptions: {
position: google.maps.ControlPosition.TOP_LEFT
},
streetViewControl: false,
panControl:false
};
$map = new google.maps.Map(document.getElementById("map"),
myOptions);
var Vmarker = new google.maps.Marker({
position: $latlng,
title: 'Point A',
map: $map,
icon: '<?php echo Yii::app()->request->baseUrl; ?>/images/library/td_icons/map/ico_blanco.png',
zIndex: 500,
draggable: true
});
overlay = new google.maps.OverlayView();
overlay.draw = function() {};
overlay.setMap($map);
我已经添加了类似的东西,我想更改 Vmarker 的图标属性,但我不知道应该怎么做?
$(document).ready(function() {
initialize();
$("#ico_beer").click(function() {
var icon = $(this).attr('src');
google.maps.event.addListener(Vmarker, 'click', function() {
Vmarker.icon : icon;
});
});