[英]Google maps v3 api, center map based on location
我正在尝试根据访问者的位置来定心地图,但是不知道怎么做。
我有一个包含访问者国家代码的PHP变量,当我在浏览器中检查源代码时,该变量工作正常。 看起来像这样;
<head>
...
<script type="text/javascript">
var lang = <?php echo $lang; ?>;
</script>
<script type="text/javascript" src="js/script.js"></script>
</head>
<body onload="initialize()">
...
我的script.js包含这些行;
function initialize() {
if (lang == NL) {
var centerlat = 52.150892;
var centerlng = 5.534668;
var zoomlvl = 7;
}
else {
var centerlat = 52.367896;
var centerlng = 5.219407;
var zoomlvl = 13;
}
var myLatlng = new google.maps.LatLng(centerlat,centerlng);
var myOptions = {
zoom: zoomlvl,
center: myLatlng,
...
}
map = new google.maps.Map(document.getElementById("kaart"), myOptions);
当我加载包含地图的页面时,它只是没有出现。 在源代码中,我可以看到PHP变量正确显示。
Firebug说lang是未定义的。 知道这里发生了什么吗?
// edit:我用同样的方式完成了另一个工作正常的变量。 但是它在初始化函数之外。
解决:忘记引号^^
尝试用“”包围NL。
顺便说一句,您是否研究过HTML 5地理位置? 它的实施相对简单,可以为您提供更准确的位置。
在此处查看: https : //developers.google.com/maps/documentation/javascript/examples/map-geolocation和此处: http : //www.w3schools.com/html/html5_geolocation.asp
知道这里发生了什么吗?
抱歉,我没有关于“评论”的回复
NL是字符串变量还是值(应该是“ NL”吗?)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.