2015-11-06 327 views
0

我已经创建了一个页面。在那里我想使用谷歌地图。在定位器部分,我想用变量解析long和lat值。我试过了,但它不起作用。请有人帮我吗?谷歌地图标记

代码:

function initMap() { 
var lats = "-33.8674769"; 
var lngs = "151.20697759999996"; 
var myLatLng = {"lat": lats, "lng": lngs}; 
var map = new google.maps.Map(document.getElementById('map'), { 
    zoom: 13, 
    center: myLatLng 
    }); 
var marker = new google.maps.Marker({ 
    position: myLatLng, 
    map: map, 
    title: 'Hello World!' 
    }); 
} 
+1

var lats = -33.8674769; var lngs = 151.20697759999996; 只是删除字符串,dats它 –

+0

看看这个[小提琴](http://jsfiddle.net/geocodezip/kxt0b09o/)的JavaScript控制台,有两个错误:'断言失败:InvalidValueError:setCenter:不是一个LatLng或LatLngLiteral:in property lat:not a number' and'Assertion failed:InvalidValueError:setPosition:not a LatLng or LatLngLiteral:in lat:not a number' – geocodezip

回答

0

你必须分析你的纬度和长期为float数据类型:

这应该工作:

function initMap() { 
var lats = "-33.8674769"; 
var lngs = "151.20697759999996"; 
var myLatLng = {"lat": parseFloat(lats), "lng": parseFloat(lngs)}; 
var map = new google.maps.Map(document.getElementById('map'), { 
    zoom: 13, 
    center: myLatLng 
    }); 
var marker = new google.maps.Marker({ 
    position: myLatLng, 
    map: map, 
    title: 'Hello World!' 
    }); 
} 
initMap(); 

这里是小提琴证明:http://jsfiddle.net/dFjdy/347/

+1

谢谢你的工作完美。 – sanju