Openlayers 3 setCenter总是在南极附近结束
我是OpenLayers3的新手,尝试构建一个简单的表单,将我的地图集中到一个给定的位置。问题是我总是在靠近南极的地方着陆。这是我的密码:Openlayers 3 setCenter总是在南极附近结束,openlayers-3,Openlayers 3,我是OpenLayers3的新手,尝试构建一个简单的表单,将我的地图集中到一个给定的位置。问题是我总是在靠近南极的地方着陆。这是我的密码: var map = new ol.Map({ target: 'map', layers: [ new ol.layer.Tile({ source: new ol.source.OSM }) ], view: new ol.View({ center: [0,0],
var map = new ol.Map({
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.OSM
})
],
view: new ol.View({
center: [0,0],
zoom: 8
})
search.addEventListener("change", searchChanged);
function searchChanged()
{
var searchVal = encodeURIComponent(search.value);
var geocode = 'http://open.mapquestapi.com/nominatim/v1/search.php?key=KEY&format=json&q=' + searchVal;
$.getJSON(geocode, function(data)
{
if(!data)
{
return;
}
map.getView().setCenter(ol.proj.transform([data[0].lon, data[0].lat], 'EPSG:4326', 'EPSG:3857'));
}
);
}
确保坐标不会被视为字符串:
ol.proj.transform([parseFloat(data[0].lon), parseFloat(data[0].lat]), 'EPSG:4326', 'EPSG:3857')
更好的方法是调试它:
var coord = ol.proj.transform([parseFloat(data[0].lon), parseFloat(data[0].lat]), 'EPSG:4326', 'EPSG:3857');
console.info(coord);
确保坐标不会被视为字符串:
ol.proj.transform([parseFloat(data[0].lon), parseFloat(data[0].lat]), 'EPSG:4326', 'EPSG:3857')
更好的方法是调试它:
var coord = ol.proj.transform([parseFloat(data[0].lon), parseFloat(data[0].lat]), 'EPSG:4326', 'EPSG:3857');
console.info(coord);