【问题标题】:Google map longitude latitude defined twice谷歌地图经度纬度定义了两次
【发布时间】:2014-04-01 17:13:08
【问题描述】:

我想定义一次经度纬度。现在它只有在定义两次时才有效。

我已经移动了一些东西,但我所管理的只是一张破损的地图。字体图标仅在 long 和 lat 出现两次时显示。

这是我的代码:

function initialize() {

  var mapOptions = {
    center: new google.maps.LatLng(27.86336,-101.130738),
    zoom: 16,
    disableDefaultUI: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  };

  var map = new google.maps.Map(document.getElementById("google-map"), mapOptions);

  new google.maps.Marker({
    map: map,
    icon: {
      path: fontawesome.markers.EXCLAMATION,
      scale: 0.5,
      strokeWeight: 0,
      strokeColor: 'transparent',
      strokeOpacity: 0,
      fillColor: 'red',
      fillOpacity: 1,
    },
    clickable: false,
    position: new google.maps.LatLng(27.86336,-101.130738)
  });

}

google.maps.event.addDomListener(window, "load", initialize);

我已经使用了这里的字体标记解决方案:Using Icon Fonts as Markers in Google Maps V3 如果有帮助的话

【问题讨论】:

  • “两次”是什么意思?在地图选项和标记位置都说?如果是这样,那 lat Lon 只是一个对象;您可以创建一次并将其传递给两个选项。
  • 只需为google.maps.LatLng 使用一个变量,或为纬度和经度值使用两个变量。

标签: javascript jquery google-maps


【解决方案1】:

你只能这样做:

function initialize() {
  var myLatLng = new google.maps.LatLng(27.86336. -101.130738);

  var mapOptions = {
    center: myLatLng,
    zoom: 16,
    disableDefaultUI: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  };

  var map = new google.maps.Map(document.getElementById("google-map"), mapOptions);

  new google.maps.Marker({
    map: map,
    icon: {
      path: fontawesome.markers.EXCLAMATION,
      scale: 0.5,
      strokeWeight: 0,
      strokeColor: 'transparent',
      strokeOpacity: 0,
      fillColor: 'red',
      fillOpacity: 1,
    },
    clickable: false,
    position: myLatLng
  });

}

google.maps.event.addDomListener(window, "load", initialize);

只要你在范围内声明变量,你就不应该有任何问题吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多