gpt4 book ai didi

javascript - 按下按钮后如何重新定位mapbox js?

转载 作者:行者123 更新时间:2023-12-01 01:54:01 27 4
gpt4 key购买 nike

因此,在按下按钮后,使用 googlemaps api 将 map 置于新城市的中心位置非常简单,但我需要使用 MapBox 中的自定义 map 来实现项目。不幸的是,他们的文档没有帮助。

var map;
function initialize() {
map = new google.maps.Map(document.getElementById('map-canvas'), {
center: new google.maps.LatLng(48.1293954,11.556663), // Munich Germany
zoom: 10
});
}

function newLocation(newLat,newLng) {
map.setCenter({
lat : newLat,
lng : newLng
});
}

google.maps.event.addDomListener(window, 'load', initialize);
</script>
<script>
$(document).ready(function () {
$("#1").on('click', function () {
newLocation(48.1293954,11.556663);
});
$("#2").on('click', function () {
newLocation(40.7033127,-73.979681);
});
$("#3").on('click', function () {
newLocation(55.749792,37.632495);
});
});

此代码来自另一篇文章:How to change Google Map Center by clicking a button

我的问题是如何使用 ma​​pbox.jsleaflet api 做到这一点?我尝试过的一切都失败了。

最佳答案

其实我已经明白了。您可以使用Leaflet的L.LatLng为坐标添加新的运算符。是 .setView() 函数让我失望了。

var map;

function initialize() {
var coordinates = new L.LatLng(40.673859, -73.970114);
map = new L.mapbox.map('map')
.setView(coordinates, 12)
.addLayer(L.mapbox.tileLayer('myMapID'));

}

function newLocation(newLat,newLng,newZoom) {
var newCoord = new L.LatLng(newLat,newLng)
map.setView(newCoord, newZoom);
}

window.addEventListener('load',initialize,false);


$(document).ready(function() {
$("#1").on('click', function () {
newLocation(40.765172,-73.978844,12);
});
$("#2").on('click', function () {
newLocation(35,-75,4);
});
$("#3").on('click', function () {
newLocation(15,-75,4);
});

});

关于javascript - 按下按钮后如何重新定位mapbox js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31604090/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com