![](/img/trans.png)
[英]Google Map api v3 - IE7 - main.js error - invalid argument (javascript)
[英]Can't seem to pass JS argument (variable) to Google Map API v3 function
我正在尝试将一大块 Google 地图 API 脚本移出页面并放入 include.js 文件中。
但。 为了做到这一点,我必须调整 function 以接受传递的变量。
这是脚本的开头通常...
<script type="text/javascript">
//<![CDATA[
function loadGmap() {
var map1options = {
center: new google.maps.LatLng(-12.043333,-77.028333),
mapTypeId: google.maps.MapTypeId.TERRAIN,
zoom: 4,
minZoom: 2,
streetViewControl: false
};
这是我尝试传递第一个变量(并且失败)...
<script type="text/javascript">
//<![CDATA[
function loadGmaps() {
loadGmap('-12.043333,-77.028333');
}
function loadGmap(coordinates) {
var map1options = {
center: new google.maps.LatLng(coordinates),
mapTypeId: google.maps.MapTypeId.TERRAIN,
zoom: 4,
minZoom: 2,
streetViewControl: false
};
想法? 也许这不应该是一个字符串......或者什么?
center: new google.maps.LatLng(-12.043333,-77.028333),
在那里,您将两个 arguments 传递给LatLng
。 在您的新 function 中,您仍然需要将两个 arguments 传递给LatLng
。 最简单的方法是接受两个 arguments 到您的 function:
function loadGmaps() {
loadGmap(-12.043333,-77.028333);
}
function loadGmap(lat, lng) {
var map1options = {
center: new google.maps.LatLng(lat, lng),
mapTypeId: google.maps.MapTypeId.TERRAIN,
zoom: 4,
minZoom: 2,
streetViewControl: false
};
}
您需要传递相同的 arguments ... 该方法接受 2 个 arguments:纬度和经度,而不是单个字符串参数。
function loadGmaps() {
loadGmap(-12.043333, -77.028333);
}
function loadGmap(lat, long) {
var map1options = {
center: new google.maps.LatLng(lat, long),
...
更改为这一行:
center: new google.maps.LatLng(
parseFloat(coordinates.split(",")[0]),
parseFloat(coordinates.split(",")[1])
),
截至最近,您需要按如下方式转换 LatLng 变量:
buildinglatlng = new google.maps.LatLng(Number(maplatitude), Number(maplongitude));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.