2012-04-19 11 views
0

次のコードを使用して同心円オブジェクト/コレクションを作成しました。その後、地図上でコレクションを移動/ドラッグし、それらのリング内の関心のある場所を強調表示したいと思います。ご覧のように、コレクションにイベントハンドラを追加しましたが、マップ上にコレクションをドラッグしようとすると、イベントハンドラがトリガされることはありません。どんなアイデアでもないのですか?私は、イベントハンドラが適切であることを確認しました。Bing MapsのポリゴンコレクションのイベントハンドラAJAX not triggering

Bing APIのv7を使用しています。 以下のコード例でハンドラを省略しました。シンプルなアラートを行います(「ここにいる」)。

function GetMap(){ 

     map.entities.push(AddRings(center)); 
} 




function AddRings(center) { 
     var circleCollection = new Microsoft.Maps.EntityCollection(); 
     circleCollection.push(AddCircle(center.latitude, center.longitude, .05, new MM.Color(155, 2, 2, 2))); 
     circleCollection.push(AddCircle(center.latitude, center.longitude, 5, new MM.Color(255, 0, 255, 0))); 
     circleCollection.push(AddCircle(center.latitude, center.longitude, 20, new MM.Color(255, 255, 0, 0))); 
     circleCollection.push(AddCircle(center.latitude, center.longitude, 10, new MM.Color(255, 0, 0, 255))); 
     MM.Events.addHandler(circleCollection, 'mousedown', StartDragHandler); 
     MM.Events.addHandler(circleCollection, 'mouseup', EndDragHandler); 
     MM.Events.addHandler(circleCollection, 'mouseout', EndDragHandler); 

     return circleCollection; 
    } 
+0

これはどのブラウザでも起こりますか?同じページでjQueryを使用しているときにIEで同様の問題が発生しました。 – psousa

+0

さて、実際にコードを読んで、イベントをコレクション自体に追加できるかどうかはわかりません。各サークルにイベントハンドラを追加しようとしましたか? – psousa

+0

あなたの最初のコメントに。私は現在IEでのみテストしており、ページにjQueryがあるので、それを使わないでいくつかのテストを行うつもりです。 –

答えて

0

EntityCollectionクラスにはマウスイベントがありません。このコレクションに含まれているイベントは次のとおりです。http://msdn.microsoft.com/en-us/library/gg427616.aspx

イベントをコレクションの各図形に追加する必要があります。

また、複雑なポリゴンを描画しようとしているようです。 AdvanceShapesモジュールの使用を検討しましたか?http://msdn.microsoft.com/en-us/library/hh921952.aspx