【问题标题】:Set marker icon url from variable从变量设置标记图标 url
【发布时间】:2019-09-22 16:56:54
【问题描述】:

我想根据 IF 语句的结果动态更改标记的图标。

当markers[i][0] 的值等于red 时,它应该使用红色标记图标的url。如果是蓝色,则应使用蓝色图标。

var markers = [ ['abc','123','456','red'],['def','124','556','blue'] ];

for( i = 0; i < markers.length; i++ ) {
   var position = new google.maps.LatLng(markers[i][1], markers[i][2]);
   bounds.extend(position);
   marker = new google.maps.Marker({
     position: position,
     map: map,
     title: markers[i][0],

     if( markers[i][1] = 'red') {
     var jel = '{url: "http://maps.google.com/mapfiles/ms/icons/red-dot.png"}';
     }
     else {
     var sign = '{url: "http://maps.google.com/mapfiles/ms/icons/blue-dot.png"}';
     }
     icon: sign
   });
}

Consolse 说:

" Uncaught SyntaxError: Unexpected token [ " 
at the line (11) where I write  "markers[i][1] = 'red')"

.

我做错了什么?

谢谢!

【问题讨论】:

  • Upps 我在第 12 行看到一个小错误。它应该是:“var sign”而不是“var jel”。

标签: javascript icons google-maps-markers


【解决方案1】:
var markers = [ ['abc','123','456','red'],['def','124','556','blue'] ];

for( i = 0; i < markers.length; i++ ) {
   var position = new google.maps.LatLng(markers[i][1], markers[i][2]);
   bounds.extend(position);
   marker = new google.maps.Marker({
     position: position,
     map: map,
     title: markers[i][0],
     icon: markers[i][3] === 'red'
      ? '{url: "http://maps.google.com/mapfiles/ms/icons/red-dot.png"}'
      : '{url: "http://maps.google.com/mapfiles/ms/icons/blue-dot.png"}'
   });
}

【讨论】:

  • 不好。它给出了同样的错误:“ Uncaught SyntaxError: Unexpected token [”
猜你喜欢
  • 2019-03-30
  • 1970-01-01
  • 2021-11-27
  • 1970-01-01
  • 2016-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多