0

Mapstraction Google Maps v3を使って動かせるマーカー(可動マーカー)を配置しようとしています。しかし、適切な設定が見つかりません。

静的マーカーを配置できます。しかし、可動マーカーの構成が見つかりません。誰でもこれについて何か考えがありますか?

乾杯、RD

4

1 に答える 1

2

(API のバージョン 3.9 を使用していると仮定します)

コンストラクターでドラッグ可能を true に設定しようとしましたか?

(かかる):

https://developers.google.com/maps/documentation/javascript/reference#MarkerOptions

マウス イベント クラスをもう少し詳しく調べることもできます。マーカー クラスには SetPosition メソッドがあり、マウス イベントには OnMouseOver イベントまたはその程度のイベントと OnMouseClick イベントまたはそのようなイベントがあります。

現在、私はこの API を使用したことがなく、Javascript をあまり使用していませんが、疑似コードを作成しようとしています。

オプション A:

var default = new google.maps.MarkerOptions;
//Other setting's go here.//
default.draggable = true;
//For fun.//
default.raiseOnDrag = true;
//Example object.//
var marker = new google.maps.Marker( default );

これにより、オブジェクトがドラッグ可能になる可能性があると思います。

オプション B:

/*This function will check if we are going to move our marker and then do it if
the conditions are right.*/
function CheckMoveMarker( var marker )
{
   //Make a new mouse event.//
   mouseStuff = new google.maps.SomePseudoMouseEvent();

   //In the real API this was an event but I dident want to write one... :-P//
   if( mouseStuff.isOver( marker.getRect() ) == true ) {

      //You may want to pop a thread here.//
      while ( mouseStuff.mouseClicked() == true ) {

         /*You may need some clever way to get the position, perhaps through
         the "map" class: https://developers.google.com/maps/documentation
         /javascript/reference#Map .*/

         marker.setPosition( mouseStuff.x, mouseStuff.y );
      }
   }

   //Return the changes to our marker.//
   return marker;
}


//Somewhere in your code.//
myMarker = CheckMoveMarker( myMarker );
于 2012-06-02T15:03:42.517 に答える