我觉得这样可以 为啥会报错?

来源:5-4 自由编程

强强强哥

2019-07-04 21:18:31

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>编程练习3</title>
    <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=a3db2663500683aa497929f6719b5ce5&plugin=AMap.Autocomplete,AMap.PlaceSearch"></script> 
    <style>
        *{
            margin: 0;
            padding: 0;
        }
    #container {
        position: absolute;
        left: 0;
        top: 0;
        width:100%; 
        height: 100%;
     }

    </style>
</head>
<body>
    <div id="container"></div> 
        
        <script>
        var map = new AMap.Map('container',{
            zoom:10,//初始的地图级别
            center:[116.379391,39.861536]//初始的地图中心点
        });
        
map.on('click',function(e){
// console.log(e)
map.remove([marker])
var marker=new AMap.Marker({
          icon:'https://a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-default.png',//标记的图标
          position:[e.lnglat.lng,e.lnglat.lat],  //标记的坐标
        //   offset:new AMap.Pixel(-25,-45)   //像素的偏差值
      })
        //  marker.setMap(map)
         map.add([marker])

})
       

        </script>
</body>
</html>


写回答

1回答

好帮手慕星星

2019-07-05

你好,是因为开始marker是没有值的,所以remove移除会报错。

可以在点击事件外面初始化一下值,然后点击事件中再重新赋值,例如:

http://img.mukewang.com/climg/5d1eb96700018cd112210550.jpg

自己重新测试下,祝学习愉快!

0

0 学习 · 6815 问题

查看课程