Javascript 通过单击下拉列表中的任意值应用放大缩小功能
当前屏幕在这里。我正在地图上显示一些位置。位置基本上是标记,你可以在这张图片中看到标记。我想做的是 当我改变dropdownlist值时,我想放大图表,在点击另一个dropdownlist值后,我可以很容易地看到其中一个标记位置,就像我点击PG&E时,谷歌地图会放大到特定的标记。我将与您共享我的代码。最重要的是,我使用kml文件在屏幕上加载地图。Javascript 通过单击下拉列表中的任意值应用放大缩小功能,javascript,google-maps,google-maps-api-3,kml,kmz,Javascript,Google Maps,Google Maps Api 3,Kml,Kmz,当前屏幕在这里。我正在地图上显示一些位置。位置基本上是标记,你可以在这张图片中看到标记。我想做的是 当我改变dropdownlist值时,我想放大图表,在点击另一个dropdownlist值后,我可以很容易地看到其中一个标记位置,就像我点击PG&E时,谷歌地图会放大到特定的标记。我将与您共享我的代码。最重要的是,我使用kml文件在屏幕上加载地图。 函数initMap(){ var map=new google.maps.map(document.getElementById('map'){
函数initMap(){
var map=new google.maps.map(document.getElementById('map'){
缩放:1,
mapTypeId:google.maps.mapTypeId.HYBRID
//中心:{lat:41.876,lng:-87.624}
});
var ctaLayer=new google.maps.KmlLayer({url:'https://sites.google.com/site/kmzmap1/plm/868l_little%20falls-st%20stephens%202%20.kmz?attredirects=0&d=1',
地图:地图
});
}
我的html代码是
<div id="map" style="width:100%;height:478px;"></div>
您需要使用JQuery来实现这一点。我将举一个例子 定义一个选择框:
<select>
<option >Choose...</option>
<option value="in">zoom in</option>
<option value="out">zoom out</option>
</select>
获取此选择框的值(如果有多个选择框,则最好基于ID而不是常规选择)options selected
是此选定项的值(在我的示例中为输入或输出)valueSelected
- 然后我们叫什么做;如果
我们增加放大,如果in
我们缩小并平移到一个坐标(这可能是一个标记)out
jsFIDLE:可能重复我没有理解你的观点@gus27你能给我一个现场演示吗?
<div id="map" style="width:100%;height:478px;"></div>
<select>
<option >Choose...</option>
<option value="in">zoom in</option>
<option value="out">zoom out</option>
</select>
$('select').on('change', function() {
var optionSelected = $("option:selected", this);
var valueSelected = this.value;
if(valueSelected == 'in'){
map.setZoom(17);
}
if(valueSelected == 'out'){
map.setZoom(4);
map.panTo(new google.maps.LatLng(33.818038, -117.928492));
}
})