我是谷歌地图的新手,我有一个带有多个标记的地图,我想使用下拉菜单在它们之间切换。
我正在使用此代码使用标记'title:
填充下拉菜单// select a marker from dropdown menu
$("select#mySelect").change(function(){
gotoMarker($(this).val());
});
function makeMarkerList() {
var options = "";
$("select#mySelect").empty();
for (var i in markers) {
options += "<option value='" + i + "'>" + markers[i].map.title + "</option>";
}
$("select#mySelect").html(options);
}
这是我到目前为止jsfiddle
这会在地图上方显示一个下拉菜单,但我不知道如何在下拉菜单中获取标记标题。
感谢您的帮助。
谢谢。
答案 0 :(得分:1)
关于您的第二个问题:您的原始代码(如下所示)试图将下拉列表中所选项目的值传递给panTo()
方法。但是,由于您设置的方式,该值只是markers
数组中标记的索引,而不是LatLng
对象。将该索引传递给panTo()
方法会产生错误。
$("select#mySelect").change(function(){
//gotoMarker($(this).val());
map.panTo($(this).val().getPosition());
});
要解决此问题,请获取索引,然后使用markers
数组中的相应标记:
$("select#mySelect").change(function(){
var index = $(this).val();
map.panTo(markers[index].position);
});