Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何更改侦听器中谷歌地图圆圈标记图标的笔划颜色?_Javascript_Google Maps Api 3 - Fatal编程技术网

Javascript 如何更改侦听器中谷歌地图圆圈标记图标的笔划颜色?

Javascript 如何更改侦听器中谷歌地图圆圈标记图标的笔划颜色?,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我创建了一个GoogleMaps对象并添加了这个标记。我想在mouseouver上更改笔划颜色 var circle = new google.maps.Marker({ map: myGmapObject, position: {lat,lng}, icon: { strokeColor: "#000", path: google.maps.SymbolPath.CIRCLE, scale: 7.5, anchor: new google.maps.

我创建了一个GoogleMaps对象并添加了这个标记。我想在mouseouver上更改笔划颜色

var circle = new google.maps.Marker({
  map: myGmapObject,
  position: {lat,lng},
  icon: {
    strokeColor: "#000",
    path: google.maps.SymbolPath.CIRCLE,
    scale: 7.5,
    anchor: new google.maps.Point(0,0)
  }
});

circle.addListener("mouseover",function(event){
      this.icon.strokeColor = "#fff";
});

但是当我将鼠标移到图标上时,笔划颜色没有改变

既然circle被声明为一个新的googlemaps标记,我认为监听器必须以这种方式声明,它必须从googlemaps传递到dom

  google.maps.event.addListener(circle, "mouseover", function() {
      this.icon.strokeColor = "#fff";
  });
你可以试着看看我遇到的这个答案


您需要获取现有图标,更改其笔划,然后在标记上设置新图标

circle.addListener("mouseover", function(event) {
  var icon = this.getIcon();
  icon.strokeColor = "#fff";
  this.setIcon(icon);
});

代码片段:

函数initMap(){
//创建地图。
var lat=37.090
液化天然气var=-95.712;
var myGmapObject=new google.maps.Map(document.getElementById('Map'){
缩放:4,
中心:{
拉特:拉特,
液化天然气:液化天然气
},
mapTypeId:'地形'
});
var circle=new google.maps.Marker({
地图:myGmapObject,
职位:{
拉特,
液化天然气
},
图标:{
strokeColor:#000“,
路径:google.maps.SymbolPath.CIRCLE,
比例:7.5,
锚:新的google.maps.Point(0,0)
}
});
circle.addListener(“鼠标悬停”,函数(事件){
var icon=this.getIcon();
icon.strokeColor=“#fff”;
这个.setIcon(图标);
});
circle.addListener(“mouseout”,函数(事件){
var icon=this.getIcon();
icon.strokeColor=“#000”;
这个.setIcon(图标);
});
myGmapObject.fitBounds(circle.getBounds());
}
/*始终明确设置贴图高度以定义div的大小
*包含映射的元素*/
#地图{
身高:100%;
}
/*可选:使示例页面填充窗口*/
html,
身体{
身高:100%;
保证金:0;
填充:0;
}