Xurui_Luo 2016-09-21 12:33 采纳率: 50%
浏览 1076

求教JavaScript大神问题

这段代码的目的是实现:鼠标在地图上点一个点,会有标记产生;再点击另一个点,产生标记同时会在两个点之间划线。再点击一个点,它会与上一个点间划线。但是现在打开网页的话没有标记,也没有点。请教大神们这是为什么

这段代码的目的是实现:鼠标在地图上点一个点,会有标记产生;再点击另一个点,产生标记同时会在两个点之间划线。再点击一个点,它会与上一个点间划线。但是现在打开网页的话没有标记,也没有点。请教大神们这是为什么


<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Google Maps JavaScript API v3 Example: Image MapTypes</title>
<link href="mapfiles/css/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="mapapi.js"></script>
<script type="text/javascript" src="mapapi.js"></script>
<script>
  function CoordMapType(tileSize) {
    this.tileSize = tileSize;
  }

  CoordMapType.prototype.getTile = function(coord, zoom, ownerDocument) {
    var div = ownerDocument.createElement('DIV');
    var ymax = 1 << zoom;
        var y = ymax - coord.y - 1;

    //div.innerHTML = coord.x + "," + y + "," + zoom;
    //div.style.width = this.tileSize.width + 'px';
    //div.style.height = this.tileSize.height + 'px';
    //div.style.fontSize = '10';
    //div.style.borderStyle = 'solid';
    //div.style.borderWidth = '1px';
    //div.style.borderColor = '#AAAAAA';
    return div;
  };

  function LocalMapType() {}

  LocalMapType.prototype.tileSize = new google.maps.Size(256, 256);
  LocalMapType.prototype.maxZoom = 18;
  LocalMapType.prototype.minZoom = 1;
  LocalMapType.prototype.name = "\u672C\u5730";
  LocalMapType.prototype.alt = "\u663E\u793A\u672C\u5730\u5730\u56FE";
  LocalMapType.prototype.getTile = function(coord, zoom, ownerDocument) {
      var img = ownerDocument.createElement("img");
      img.style.width = this.tileSize.width + "px";
      img.style.height = this.tileSize.height + "px";

      var ymax = 1 << zoom;
            var y = ymax - coord.y - 1;

      var strURL = "tilemap\\" + zoom + "\\" + coord.x + "\\" + coord.y + ".png";

      img.src = strURL;
      return img;
  };

  var localMapType = new LocalMapType(); 

var  myLatlng;
var  myOptions;
var  map;
var  poly;

  function initialize() {
    myLatlng = new google.maps.LatLng(34.251345, 108.946673);
    myOptions = {
      center: myLatlng,
      zoom: 16,
      streetViewControl: false,
      //\u6BD4\u4F8B\u5C3A\u63A7\u4EF6   
            scaleControl: true,
      mapTypeControlOptions: {
            mapTypeIds: ["local", google.maps.MapTypeId.ROADMAP]
        }
    };

    map = new google.maps.Map(document.getElementById("map_canvas"),
        myOptions);
    //map.setMapTypeId('satellite');
    //map.MapTypes.insertAt(0, moonMapType);

    map.mapTypes.set('local', localMapType);
    map.setMapTypeId('local');

    google.maps.event.addListener(map, 'mouseover', function(event){
    var lat = event.latLng.lat();//纬度

    var lng =event.latLng.lng();//经度
            });

    map.overlayMapTypes.insertAt(0, new CoordMapType(new google.maps.Size(256, 256)));
  poly = new google.maps.Polyline({
    strokeColor: '#000000',
    strokeOpacity: 1.0,
    strokeWeight: 3
  });
  poly.setMap(map);

  // Add a listener for the click event
  map.addListener('click', addLatLng);
  }

function addLatLng(event) {
  var path = poly.getPath();

  // Because path is an MVCArray, we can simply append a new coordinate
  // and it will automatically appear.
  path.push(event.latLng);

  // Add a new marker at the new plotted point on the polyline.
  var marker = new google.maps.Marker({
    position: event.latLng,
    title: '#' + path.getLength(),
    map: map
  });
} 
</script>
</head>
<body onload="initialize()">
  <!--<div id="map_canvas" style="width: 100%; height: 690px;"></div>-->
  <div id="map_canvas" style="width: 100%; height: 690px;"></div>
</body>
</html>


  • 写回答

1条回答

  • Go 旅城通票 2016-09-22 08:14
    关注

    你需要存储你的点才行啊,cookie或者storage。window.onlaod的时候从存储的地方加载点信息。都没存储肯定刷新后就没有数据了

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)