小白初试,这里用广西省为例,但是感觉百度地图加载属实有点慢=。=

以下是完整代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><script type="text/javascript" src="https://api.map.baidu.com/api?type=webgl&v=1.0&ak=TLjkUDAFsU0vyG7dVn6f8Hbx165SCELO"></script><script type="text/javascript" src="https://bj.bcebos.com/v1/mapopen/api-demos/data/province.js"></script><script src="https://code.bdstatic.com/npm/mapvgl@1.0.0-beta.141/dist/mapvgl.min.js"></script><script src="https://bj.bcebos.com/v1/mapopen/cms/bmapgldemo/custom/mapstyleblack.js"></script><title>广西壮族自治区</title><style>html,body,#container {width: 100%;height: 100%;overflow: hidden;margin: 0;padding: 0}.info {z-index: 999;width: auto;padding: 10px;margin-left: 10px;position: fixed;top: 10px;background-color: #fff;border-radius: 5px;font-size: 14px;color: #666;box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5);}.selbox {margin: 8px 0;}select {width: 180px;height: 30px;border: 1px solid #ddd;}</style>
</head>
<body><div id="container"></div><script>var map = new BMapGL.Map('container');map.centerAndZoom(new BMapGL.Point(108.51, 23.32), 7); //设置中心点经纬度map.enableScrollWheelZoom();var zoomCtrl = new BMapGL.ZoomControl();map.addControl(zoomCtrl);// --- 添加行政区划 ---var dist = new BMapGL.DistrictLayer({name: '(广西壮族自治区)',kind: 1,fillColor: '#618bf8',fillOpacity: 1,strokeColor: '#daeafa',viewport: true});map.addDistrictLayer(dist);var point = new BMapGL.Point(107.45, 22.13); //坐标点经纬度//标注点var myicon = new BMapGL.Icon('https://ts2.cn.mm.bing.net/th?id=OIP-C.v1RFlHRBreDq34Vxbj37PAHaHa&w=250&h=250&c=8&rs=1&qlt=90&o=6&dpr=1.25&pid=3.1&rm=2', // 百度图片        new BMapGL.Size(40,40), // 视窗大小        {// imageSize: new BMapGL.Size(144,92), // 引用图片实际大小          // imageOffset:new BMapGL.Size(-10,0)  // 图片相对视窗的偏移        })var marker = new BMapGL.Marker(point,{icon:myicon})map.addOverlay(marker); //添加标注点//添加遮罩层隐藏别的地区var bdary = new BMapGL.Boundary();bdary.get('广西壮族自治区', function (rs) {// 绘制行政区for (var i = 0; i < rs.boundaries.length; i++) {var path = [];var xyArr = rs.boundaries[i].split(';');var ptArr = [];for (var j = 0; j < xyArr.length; j++) {var tmp = xyArr[j].split(',');var pt = new BMapGL.Point(tmp[0], tmp[1]);ptArr.push(pt);}var mapmask = new BMapGL.MapMask(ptArr, {isBuildingMask: true,isPoiMask: true,isMapMask: true,showRegion: 'inside',topFillColor: '#5679ea',topFillOpacity: 0.5,sideFillColor: '#5679ea',sideFillOpacity: 0.9});map.addOverlay(mapmask);var border = new BMapGL.Polyline(ptArr, {strokeColor: 'red',strokeWeight: 3,strokeOpacity: 1});map.addOverlay(border);}})// --- 行政区划添加鼠标事件 ---dist.addEventListener('mouseover', function (e) {e.currentTarget.setFillColor('#9169db');});dist.addEventListener('mouseout', function (e) {e.currentTarget.setFillColor(e.currentTarget.style.fillColor);});</script>
</body>
</html>

然后设置地图不可缩放,不可拖拽即可。感觉这种方案并不是最佳方案,但是因为本人也是小白初试,很多地方还是做得不足,只能凑合用一下。
修改省份即可切换别的省,记得同时设置中心点,不然会出现遮罩层不出现或者其他bug.

百度地图 只显示某个省 自定义标注点 添加鼠标事件相关推荐

  1. 调用百度地图只显示网格的问题

    转自:推酷http://www.tuicool.com/articles/biyeY37 关于安卓调用百度地图只显示网格的问题,楼主也曾为此不知所措,曾怀疑是不是百度SDK的bug,在网上也搜了各种答 ...

  2. 百度地图JavaScript API 学习之自定义标注图标(一)

    地图绘制之添加自定义标注图标(一) 通过Icon类可实现自定义标注的图标.附上Icon的类参考链接,自行查看 官方提供了两种方法: 通过参数MarkerOptions的icon属性进行设置 使用Mar ...

  3. javascript百度地图只显示北京的解决

    仅作为记录,大佬请跳过. javascript百度地图的源代码参考传送门 所以需要找个某个位置的经纬度 解决: 获取经纬度传送门 其他参考(博主暂未使用) 传送门 博主源代码: 在vs code中,将 ...

  4. 百度地图只显示指定的行政区域地图

    效果图如下: 鼠标移动效果如下: 完整代码下载: https://download.csdn.net/download/talver/11932964 小技巧: 去除百度地图左下角Logo,在html ...

  5. 百度地图只显示你想要的部分

    也许有一天开发百度地图的人也和我一样遇到同样的问题,这里将代码附上,一方面方便百度地图开发人员进行开发,另一方面已备后用. 代码有很大的优化空间,期望不吝指教. 下载链接http://download ...

  6. 百度地图API显示多个标注点的代码 以及修改传参

    引用的页面原始数据 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

  7. 百度地图API显示多个标注点带提示的代码 / 单个标注点带提示代码

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head><me ...

  8. 【百度地图API】如何给自定义覆盖物添加事件

    原文:[百度地图API]如何给自定义覆盖物添加事件 摘要: 给marker.lable.circle等Overlay添加事件很简单,直接addEventListener即可.那么,自定义覆盖物的事件应 ...

  9. Informerd详解(2)与C#百度地图定位显示项目学习

    文章目录 摘要 一.Informer代码部分(2) 1.1 Deconder模块代码 1.2 model.py部分源码 1.3 训练与预测阶段 1.4 小结 二. C# 调用百度地图API 的Demo ...

最新文章

  1. Info:Memory module [DIMM] needs attention: Single-bit warning error rate exceeded, Single-bit fai...
  2. 关于javascript数据存储机制的一个案例。
  3. Linux服务-FTP文件服务器部署
  4. 借呗利息为什么比银行信用贷款高很多?
  5. linux离线安装redmine_Linux 下一款非常好用的翻译软件
  6. c++ qt获取电脑的内存_Qt官方示例-TCP客户端/服务器示例
  7. 博客网站源代码_详解SEO布词以及网站排名优化技巧
  8. 请给出计算231-1的python表达式_【填空题】计算2 32 -1的Python表达式可以书写为____...
  9. Server系列18:如何通过组策略赋予domain user受限网络管理权限?
  10. HTTP 代理服务器技术选型之旅
  11. MZD Studios|感谢你们,我挺过来了,不做老外舔狗 -Jerome Alan Chan
  12. 2021年低压电工考试试卷及低压电工作业模拟考试
  13. 【qt】QWS和 QPA
  14. C#——NPOI对Excel的操作、导入导出时异常处理(三)
  15. Android封装一个自定义标题栏
  16. Monero GUI Wallet发送交易源码分析
  17. 小米生态链布局遇阻,求快的小米却更慢了
  18. 2021年的EI会议论文发表难度评价
  19. js在打开新页面的时候用新的标签页打开并且在关闭打开的页面的时候刷新父页面的方法...
  20. java微信公众号素材管理系统_微信公众平台后台素材管理

热门文章

  1. 格式字符串形式实现LabVIEW的XY图时间轴显示格式切换
  2. 修改mysql 视图字段类型_MySQL中的数据类型,列选项,视图
  3. oracle 频繁commit,[转载]有关COMMIT太频繁问题解决方案
  4. delphi 拷贝网络共享文件 代码
  5. js控制html页面缓存,js页面缓存问题
  6. javabean注意事项之用Integer替换你的int
  7. 2012伦敦奥运!我小心的预测下!
  8. Ajax 加载显示图标集合
  9. 解决ubuntu wps for linux项目符号乱码
  10. 两种模式的数据服务解决方案