使用鼠标事件更改多边形的颜色

发布于 2024-09-15 14:21:22 字数 709 浏览 10 评论 0原文

我尝试通过鼠标悬停事件将颜色更改为一个多边形,

   map = new GMap2(document.getElementById("map_canvas")); 
   map.setCenter(new GLatLng(-39.875696,-72.624207), 9); 
   pLat = 0.2;
   pLon = 0.2;
   p1Lat = -40;
   p1Lon = -73;
   p1Coor = [
        new GLatLng(p1Lat, p1Lon - pLon),
        new GLatLng(p1Lat + pLat, p1Lon),
        new GLatLng(p1Lat, p1Lon + pLon),
        new GLatLng(p1Lat - pLat, p1Lon),
        new GLatLng(p1Lat, p1Lon - pLon)
     ];
   var p1 = new GPolygon(p1Coor, "#f33f00", 2, 1, "#ff0000", 0.2);
   GEvent.addListener(p1,"mouseover",function(overlay,latlng){
      p1.color = "#ffff00";
      alert(p1.color); 
  });
   map.addOverlay(p1);

属性会发生变化,但我没有看到变化。为什么 ?

I try change the color to one Gpolygon with a mouseover event

   map = new GMap2(document.getElementById("map_canvas")); 
   map.setCenter(new GLatLng(-39.875696,-72.624207), 9); 
   pLat = 0.2;
   pLon = 0.2;
   p1Lat = -40;
   p1Lon = -73;
   p1Coor = [
        new GLatLng(p1Lat, p1Lon - pLon),
        new GLatLng(p1Lat + pLat, p1Lon),
        new GLatLng(p1Lat, p1Lon + pLon),
        new GLatLng(p1Lat - pLat, p1Lon),
        new GLatLng(p1Lat, p1Lon - pLon)
     ];
   var p1 = new GPolygon(p1Coor, "#f33f00", 2, 1, "#ff0000", 0.2);
   GEvent.addListener(p1,"mouseover",function(overlay,latlng){
      p1.color = "#ffff00";
      alert(p1.color); 
  });
   map.addOverlay(p1);

the attribute change, but I don`t see the change. why ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黎夕旧梦 2024-09-22 14:21:22

我找到了解决方案
p1.setFillStyle({color:"#0000ff"});
p1.setStrokeStyle({颜色:"#0000ff"});

I find the solution with
p1.setFillStyle({color:"#0000ff"});
p1.setStrokeStyle({color:"#0000ff"});

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文