0

Fusion Layer のスタイリングで問題が発生しました。助けていただければ幸いです。デフォルトのスタイリングが次のように定義されたレイヤーを追加します

layer.set('styles', [{ 
                 polygonOptions: { 
                         fillColor: '#FFFFFF', 
                         fillOpacity: 1, 
                         strokeColor: '#000000', 
                         strokeWeight: 1 
                 } 
         }]); 

これはうまくいきます。次に、このレイヤーのクリック リスナーが設定されます。ストーリーは次のようになります。ユーザーがマップ上のフィーチャをクリックします。そのプロパティが指定された値 (フォームなど) と等しい場合、この機能が他の機能とは異なる fillColor を取得するようにします。

google.maps.event.addListener(okresy,'click', function(ev) { 
                 nazev = ev.row.NAZEV.value; 
                         layer.set("styles", [{ 
                                 polygonOptions: { 
                                         fillColor: '#FFFFFF', 
                                         fillOpacity: 1, 
                                         strokeColor: '#000000', 
                                         strokeWeight: 1 
                                 }, 
                                 where: "'NAZEV' = '"+nazev+"'", 
                                 polygonOptions : { 
                                         fillColor : '#008C00', 
                                         fillOpacity : 1, 
                                         strokeColor : '#000000', 
                                         strokeWeight : 1 
                                 } 
                         }]); 

}); 

そこで、クリックした機能に色 #008C00 を設定し、他のすべての機能に最初と同じスタイルを割り当てます。しかし、何をしてもうまくいかない。残りの機能は、一部の機能がクリックされると、デフォルトの半透明の赤色になります。何か不足していますか?Opera Dragonfly はコードの誤りを報告しないので、構文は問題ないと思います。

4

1 に答える 1

2

ハ、問題は解決しました!私は実際にこのようなものが必要でした:

okresy.set("styles", [{ 
        polygonOptions: {
            fillColor: '#FFFFFF', 
            fillOpacity: 1, 
            strokeColor: '#000000', 
            strokeWeight: 1 }}, 
        {where: "'NAZEV' = '"+nazev+"'", 
         polygonOptions : {
            fillColor : '#008C00', 
            fillOpacity : 1, 
            strokeColor : '#000000', 
            strokeWeight : 1 
         }} 
]);

デバッガーはエラーを報告しませんでしたが、それが私を混乱させました。

于 2012-02-11T20:49:38.707 に答える