0

経度と緯度の変数を必要とするパントマーカー関数があります。連絡先の名前を変数として送信することができます。

連絡先の名前は、パンしたいマーカーのタグです。タグでマーカーの経度と緯度を取得することはできますか?

これが私のパント機能です

 function pantoUser(lati,longi,i)
{
    jQuery("#dispatcher").gmap3({
        action: 'panTo',
        args:[new google.maps.LatLng(lati,longi)],
        zoom: 7
               });
               currentPoint = i;
                jQuery("#dispatcher").css({
                    cursor: 'pointer'
                });
                jQuery('#markerTitle' + i + '').fadeIn({
                    duration: 200,
                    queue: false
                }).animate({
                    bottom: "32px"
                }, {
                    duration: 200,
                    queue: false
                });
            jQuery("#target").stop(true, true).fadeIn(1200).delay(500).fadeOut(1200);
                jQuery("#dispatcher").css({
                    cursor: 'default'
                });
                jQuery('#markerTitle' + i + '').stop(true, true).fadeOut(2000, function() {
                    jQuery("#dispatcher").css({
                        bottom: "0"
                    })
                jQuery("#target").stop(true, true).fadeIn(1200).delay(500).fadeOut(1200);
                });

}

こんなこと考えていたの?

 function locateLastSpeaker(name) {
var lati = SOMEHOW GET IT
var longi = SOMEHOW GET IT
pantoUser(lati,longi,1)

}

ダンカンソリューションを試した後に編集してください!!

var stuMarkers = {};

function addMarker(i, lati, longi, id, name, state, datestring) {
 var placename = name;
 stuMarkers[placename].lat = lati;
 stuMarkers[placename].lng = longi;
    $('#dispatcher').gmap3(
      { action: 'addMarker', ....etc
4

2 に答える 2

1

バリーが示唆するような配列の代わりに、名前をキーにしたオブジェクトはどうでしょうか。そうすれば、ループする必要さえありません。

var stuMarkers = {};  // global variable outside of any function

// loop creating your markers

function addMarker(i, lati, longi, id, name, state, datestring) {
 var placename = name;
 stuMarkers[placename] = {};
 stuMarkers[placename].lat = lati;
 stuMarkers[placename].lng = longi;
 stuMarkers[placename].i = i;
 ...
}


function locateLastSpeaker(name) {
  pantoUser(stuMarkers[name].lat,stuMarkers[name].lng,stuMarkers[name].i);
}
于 2012-06-15T15:27:22.667 に答える
0

各マーカーへの参照を保持します-おそらく配列内にあります。

特定のマーカーを見つけたい場合は、その配列をループして、特定のマーカーを見つけます。

次に、それを使ってやりたいことをします。

于 2012-06-15T15:21:24.377 に答える