高德地图api多地点自定义显示名字+文字标识

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
        <title>各个校区</title>
        <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
        <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=62015cdf314339d6600c34a437ad8fcb"></script>
        <script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script>

    </head>
    <style type="text/css">
        html, body, #container {
            height: 280px;
            width: 100%;
        }
    </style>

    <body>
        <div id="container"></div>
        <script>

        var park = [{
            'name' : '北京校区',
            'center' : '116.205467, 39.907761',
            'type' : 1,
            'index' :1,
            'icon' :'',
            'address': '北京市',
            'state': 1,
            'cpu': '30%',
            'subDistricts' : []
        },{
            'name' : '保定校区',
            'center' : '115.205467, 38.907761',
            'type' : 1,
            'index' :2,
            'icon' :'',
            'address': '保定市',
            'state': 2,
            'cpu': '37%',
            'subDistricts' : []
        },{
            'name' : '河北校区',
            'center' : '114.920000,37.670000',
            'type' : 1,
            'index' :3,
            'icon' :'',
            'address': '河北',
            'state': 2,
            'cpu': '45%',
            'subDistricts' : []
        }];
        var map = new AMap.Map('container', {
            resizeEnable: true,
            zoom : 10 
        });
        //点击合法marker重定向到parkInfo页面
        var _onClick = function(e) {
               // console.log(e.target)
               // console.log(e.target.De.title)
               // window.open("parkInfo.html?id="+this.G.index,"_blank");
                   
           }
        //循环输出数据库中所有的点的位置和信息
        var markers = [];
        for(var i = 0;i <= park.length;i+=1){
            var marker;//实例化marker
            marker = new AMap.Marker({
                        position: park[i].center.split(','),
                        // title: park[i].name,//鼠标移入显示停车场的名称
                        map: map,
                        index: park[i].index,
                        icon: park[i].icon,//自定义显示在地图上的图标
                        offset: new AMap.Pixel(-13, -30)

                    });


             marker.setMap(map);

            // 设置鼠标划过点标记显示的文字提示
            marker.setTitle(park[i].name);

            // 设置label标签
            // label默认蓝框白底左上角显示,样式className为:amap-marker-label
            marker.setLabel({
                offset: new AMap.Pixel(5, 5),  //设置文本标注偏移量
                content: park[i].name, //设置文本标注内容
                direction: 'right' //设置文本标注方位
            });
           
            markers.push(marker);
            //给所有的点标注添加点击事件
            AMap.event.addListener(marker, 'click', _onClick);
        }    

        //设置地图自适应
        map.setFitView();
        </script>
    </body>
</html>

高德官网文档:文本标记-点标记-示例中心-JS API 示例 | 高德地图API

第二种用法:点击地标显示地址,并且还可以取消显示的文字

直接上干货

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<meta http-equiv="X-UA-Compatible" content="IE=edge">
    	<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
		<title>九艺门各个校区</title>
		<link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
    	<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=62015cdf314339d6600c34a437ad8fcb"></script>
    	<script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script>
    	<!-- UI组件库 1.0 -->
    	<script src="http://webapi.amap.com/ui/1.1/main.js?v=1.1.1"></script>
	</head>
	<style type="text/css">
		html, body, #container {
            height: 280px;
            width: 100%;
        }
	</style>

	<body>
		<div id="container"></div>
	</body>
		<script>

    // //初始化地图对象,加载地图
    // var map = new AMap.Map("container", {resizeEnable: true});
    // var lnglats = [
    //     [116.368904, 39.923423],
    //     [116.382122, 39.921176],
    //     [116.387271, 39.922501],
    //     [116.398258, 39.914600]
    // ];
    // var infoWindow = new AMap.InfoWindow({offset: new AMap.Pixel(0, -30)});
    // for (var i = 0, marker; i < lnglats.length; i++) {
    //     var marker = new AMap.Marker({
    //         position: lnglats[i],
    //         map: map
    //     });
    //     marker.content = '我是第' + (i + 1) + '个Marker';
    //     marker.on('click', markerClick);
    //     marker.emit('click', {target: marker});
    // }
    // function markerClick(e) {
    //     infoWindow.setContent(e.target.content);
    //     infoWindow.open(map, e.target.getPosition());
    // }
    // map.setFitView();


		var park = [{
			'name' : '昌平校区',
			'center' : '116.37895,40.109008',
			'type' : 1,
			'index' :122,
			'icon' :'',
			'address': '北京市昌平区',
			'state': 122,
			'cpu': '50%',
			'subDistricts' : []
		},{
			'name' : '海淀2校区',
			'center' : '116.292553,39.96316',
			'type' : 1,
			'index' :123,
			'icon' :'',
			'address': '北京市海淀区',
			'state': 123,
			'cpu': '50%',
			'subDistricts' : []
		},{
			'name' : '西城校区',
			'center' : '116.392798,39.884803',
			'type' : 1,
			'index' :124,
			'icon' :'',
			'address': '北京市西城区',
			'state': 124,
			'cpu': '50%',
			'subDistricts' : []
		},{
			'name' : '总部',
			'center' : '116.509449,39.960598',
			'type' : 1,
			'index' :128,
			'icon' :'images/zongbu.png',
			'address': '北京市朝阳区',
			'state': 128,
			'cpu': '50%',
			'subDistricts' : []
		}];
		var map = new AMap.Map('container', {
	        resizeEnable: true,
	        zoom : 10 
		});
		// //点击合法marker重定向到parkInfo页面
		// var _onClick = function(e) {
  //  			// console.log(e.target)
  //  			// console.log(e.target.De.title)
  //  			// window.open("parkInfo.html?id="+this.G.index,"_blank");
   				
  //  		}

   		var infoWindow = new AMap.InfoWindow({offset: new AMap.Pixel(0, -30)});
		//循环输出数据库中所有的点的位置和信息
		var markers = [];
		for(var i = 0;i <= park.length;i+=1){
			var marker;//实例化marker
			marker = new AMap.Marker({
    					position: park[i].center.split(','),
    					title: park[i].name,//鼠标移入显示停车场的名称
    					map: map,
    					index: park[i].index,
				        icon: park[i].icon,//自定义显示在地图上的图标
				        offset: new AMap.Pixel(-13, -30)

    				});


			 marker.setMap(map);
		    // 设置鼠标划过点标记显示的文字提示
		    marker.setTitle(park[i].name);

		    marker.content = park[i].name;
	        marker.on('click', markerClick);
	        marker.emit('click', {target: marker});
		    
		    // 设置label标签
		    // label默认蓝框白底左上角显示,样式className为:amap-marker-label
		    // marker.setLabel({
		    //     offset: new AMap.Pixel(2, 2),  //设置文本标注偏移量
		    //     content: park[i].name, //设置文本标注内容
		    //     direction: 'right' //设置文本标注方位
		    // });
		   
    		markers.push(marker);
    		
    		//给所有的点标注添加点击事件
    		// AMap.event.addListener(marker, 'click', _onClick);
		}	
		function markerClick(e) {
	        infoWindow.setContent(e.target.content);
	        infoWindow.open(map, e.target.getPosition());
	    }

		//设置地图自适应
		map.setFitView();
	</script>
	<style type="text/css">
	@media(min-width: 410px) {
        .batss {
            margin-top: -14.5%;
        }
       
    }
    @media(max-width: 415px) {
        .batss {
            margin-top: -14.5%;
        }
       
    }

    @media(max-width: 396px) {
        .batss {
            margin-top: -15.3%;
        }
       
    }
	</style>
</html>

 星星一直在努力,加油

demo:下载:

借鉴:高德地图api的自定义地点标注_bearkeeping的博客-CSDN博客_高德地图提供的接口可以增加地图上的地标吗

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
在使用高德地图API和Vue3实现自定义弹窗样式时,可以参考以下步骤: 1. 首先,初始化地图弹窗实例,并设置isCustom为true,表示使用自定义窗体。可以使用AMap.InfoWindow类来创建地图弹窗实例,并设置偏移量等属性。\[1\] 2. 在处理地图标记物点击事件时,可以通过获取点击的标记物对象,设置动画效果,并获取相应的内容。可以使用AMap.InfoWindow的setContent方法设置弹窗内容,然后使用open方法打开弹窗。\[1\] 3. 可以参考高德地图官方提供的demo样式,该demo展示了自定义弹窗的样式。可以在官方demo中查看代码和样式,以便参考和使用。\[2\] 4. 高德地图官网还提供了自定义弹窗内容的例子,使用了Dom操作的方式来实现。可以使用Vue的全局API中的Vue.extend方法来创建一个Vue子类构造器,然后通过实例化该构造器来创建一个Vue对象,类似于Dom中的DocumentFragment接口。这样可以使用Vue的方式来实现自定义弹窗的Dom操作。\[3\] 综上所述,你可以使用高德地图API和Vue3来实现自定义弹窗样式。可以参考高德地图官方提供的demo和文档,根据自己的需求进行相应的代码编写和样式设计。 #### 引用[.reference_title] - *1* *3* [高德地图自定义弹窗内容](https://blog.csdn.net/fredricen/article/details/106172766)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [VUE 高德自定义弹窗样式不生效?(AMap.InfoWindow弹窗样式问题)](https://blog.csdn.net/weixin_39921970/article/details/120744647)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xingxingwuxin

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值