自2018年10月18日起,高德开发者论坛除车机板块外,其他板块将停止发帖与维护,如您有使用问题请 提交工单 联系我们,感谢您的理解。

查看: 272|回复: 1
打印 上一主题 下一主题

[使用疑问] 如何操作才能使在地图缩放值大于某一值后,才显示点标注

[复制链接]
最佳答案
0 

1

主题

1

帖子

5

积分

新手上路

Rank: 1

积分
5
跳转到指定楼层
楼主
发表于 2018-2-17 19:09:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
发表帖子
API/SDK版本号: JavaScript API
产品: 2D地图
手机型号:
使用接口:
本帖最后由 sayMyName 于 2018-2-17 19:13 编辑

通过循环设置了几个标注(Marker),现在想在zoom在大于某些情况下才显示这些标注。
下面是我对这个问题的思考:
大家都知道,地图上很多信息在地图放大到一定程度后才会显示,避免了地图信息过多造成信息拥挤。
观察到,标注在任何放大等级都能显示。所以针对我的问题想到两个思路:

第一个,所有在地图上显示的信息都有一个类似优先等级的东西,在放大等级小即大比例尺的情况下,优先等级高的才会显示。因为标注的优先等级最高,所以在任何放大等级下都能显示。如果是这样的话,是否有某个属性或者方法可以来设置Marker的优先等级?
第二个,并无优先等级这么一说,每一个信息只是设置好了在某一比例尺才会显示而已。如果是这种情况,又该怎么处理?




我自己想的解决办法,在创建标注的时候就设置标注的类(不知道能不能这样操作),监听地图缩放,通过JS使标注的visible变true或false,但好像并没有办法设置类。

综上,求高人指点!

回复

使用道具 举报

最佳答案
0 

1

主题

11

帖子

55

积分

新手上路

Rank: 1

积分
55
沙发
发表于 2018-2-26 19:04:13 | 只看该作者
可以,你在标注marker的时候设置div ,添加类,使用map.getZoom() 方法获取缩放级别,然后使用css的display控制显示与隐藏和jquery 控制如
AMap.event.addListener(map,'zoomend',function(){
        var zoomnumber=map.getZoom();
                if(zoomnumber>=5)
                {
                $('.markerdisplay').css('display','block');
                }
                else{
                $('.markerdisplay').css('display','none');       
                        }
    });
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|高德开发者论坛

Copyright ©2014 高德开发者论坛.All Rights Reserved |京ICP证070711号

意见反馈 常见问题 服务条款 联系我们
快速回复 返回顶部 返回列表