Google maps api 3 映射V3视口NAN值
我最近在一个网站上实现了谷歌地图的集成 在develserver中一切正常,但在生产服务器中映射不会渲染。 我已经尝试创建一个api密钥,允许两个域在同一个密钥中,并且没有任何更改。Dev工作,prod不工作 在firebug中,我看不到任何js错误,只是api_视口调用中的一些NAN值 请参阅下面的调用和js代码。有什么想法吗?谢谢 开发人员服务器调用: PROD服务器调用:Google maps api 3 映射V3视口NAN值,google-maps-api-3,render,nan,Google Maps Api 3,Render,Nan,我最近在一个网站上实现了谷歌地图的集成 在develserver中一切正常,但在生产服务器中映射不会渲染。 我已经尝试创建一个api密钥,允许两个域在同一个密钥中,并且没有任何更改。Dev工作,prod不工作 在firebug中,我看不到任何js错误,只是api_视口调用中的一些NAN值 请参阅下面的调用和js代码。有什么想法吗?谢谢 开发人员服务器调用: PROD服务器调用: $this.data('map').lat&$this.data('map').lng来自哪里?在我看来,$thi
$this.data('map').lat
&$this.data('map').lng
来自哪里?在我看来,$this.data('map').lng
在您的非工作映射中丢失。实际上,这些参数来自html5数据属性。但是你的评论让我再次看了看,我发现了问题所在。只是一个错误的参数引用。所以问题出在调用/配置中,而不是问题中提供的信息中?由于google closurejs压缩错误,我不得不更改变量名,而我忘记在生产环境的标记中更改它。一旦我同步了文件,一切都很好。
$.fn.initPetrolMap = function(){
$this = $(this);
var s = document.createElement('script');
s.type = "text/javascript";
s.src = "https://maps.googleapis.com/maps/api/js?key=MYKEY&sensor=true&callback=loadPetrolMap";
window.loadPetrolMap = function(){
// console.log($this.data('map'));
var lt = $this.data('map').lat;
var ln = $this.data('map').lng;
var mapOptions = {
zoom: 15,
center: new google.maps.LatLng(lt,ln),
mapTypeControl: true,
navigationControl: true,
navigationControlOptions: {
style: google.maps.NavigationControlStyle.SMALL
},
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(document.getElementById($this.prop('id')),
mapOptions);
var image = $this.data('map').marker;
var myLatLng = new google.maps.LatLng(lt, ln);
var stationMarker = new google.maps.Marker({
position: myLatLng,
map: map,
icon: image
});
google.maps.event.addListener(stationMarker, 'click', function() {
var url = 'https://maps.google.com/maps?daddr='+lt+','+ln+'&hl=en&sll='+lt+','+ln+'&t=m&mra=mift&mrsp=2&sz=5&z=15';
window.open(url);
});
};
$("head").append(s);
};