0

私は次のようなオブジェクトを作成しています:

  markers[name] = {};
  markers[name].id = id;
  markers[name].lat = lati;
  markers[name].lng = longi;
  markers[name].state = state;
  markers[name].position = posi;
  markers[name].selected = false;

次に、マーカーオブジェクトをループして、マーカー画像を変更する新しい関数があります。selectedはtrueに設定されています。

これが私が試したことです:

function setMarkerImage() { 

        for (var key in markers) { 
           console.log("test 1: " + key + key.selected);
            if (key.selected === true)
          {
          console.log("test 2");        
             var newImage = new google.maps.MarkerImage('img/presence/' + state + '_sel.png');
             var marker = $("#dispatcher").gmap3({action: 'get', name:'marker', tag: key})
               if (marker){
               marker.setIcon(newImage);
               }
          }
        } 
} 

問題は私が得ていることです

test 1: Vinceundefined 

コンソールで、私はそれを取ります私はkey.selectedを使用することはできませんこのように選択されましたか?

4

1 に答える 1

3

keyオブジェクトではないので、selectedキーはありません。代わりに

console.log("test 1: " + key + markers[key]["selected"]);
于 2012-07-04T12:20:16.640 に答える