我有一个panto标记功能,需要经度和纬度变量。我可以将联系人姓名作为变量发送。
联系人姓名是我想要平移的标记的标记。我有可能通过标记获得标记的经度和纬度吗?
这是我的panto功能
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)
}
尝试duncans解决方案后编辑!!
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
答案 0 :(得分: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);
}
答案 1 :(得分:0)
保留对每个标记的引用 - 可能在数组中。
如果要查找特定标记,请循环该数组,然后找到特定标记。
然后用它做你想做的事。