漏刻有时地理信息系统LOCKGIS主程序配置说明(地图调起弹窗、图像标注、设置最佳视野、指定地图中心、H5获取导航、微信小程序环境识别)

本文主要是介绍漏刻有时地理信息系统LOCKGIS主程序配置说明(地图调起弹窗、图像标注、设置最佳视野、指定地图中心、H5获取导航、微信小程序环境识别),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. 漏刻有时地理信息系统说明文档(LOCKGIS、php后台管理、三端一体PC-H5-微信小程序、百度地图jsAPI二次开发、标注弹窗导航)
  2. 漏刻有时地理信息系统LOCKGIS小程序配置说明(web-view组件、服务器域名配置、复制链接和转发功能)
  3. 漏刻有时地理信息系统LOCKGIS主程序配置说明(地图调起弹窗、图像标注、指定地图中心、H5获取导航、微信小程序环境识别)

漏刻有时地理信息系统LOCKGIS

  • 一、地图调起弹窗始终保持在底部
  • 二、设置最佳视野
  • 三、指定地图中心
  • 四、H5获取导航坐标
  • 五、微信小程序环境配置
    • 1.地图调起导航
    • 2.返回小程序首页
  • 六、H5与微信调用页
    • 1.H5默认页
    • 2.微信小程序默认页

一、地图调起弹窗始终保持在底部

调整导航css中的定位为:position: fixed;

/*导航*/
.navi {position: fixed;bottom: 0px;left: 0;right: 0;margin: auto 0;width: 100%;height: 200px;background-color: #FFF;border-radius: 10px 10px 0 0;z-index: 99999;display: none; /*默认隐藏*/
}.navi > p {height: 50px;line-height: 50px;text-align: center;border-bottom: 1px solid rgba(139, 145, 160, 0.1);
}.navi > p:nth-child(4) {border-top: 1px solid rgba(139, 145, 160, 0.1);
}

绝对定位(position: absolute)和固定定位(position: fixed)是CSS中的两种特殊定位方式。

绝对定位是相对于元素最近的已定位的祖先元素(设置了绝对定位或者相对定位的元素),如果没有已定位的祖先元素,那么它的位置则是相对于最初的包含块(html)。绝对定位的元素不占空间,会脱离文档流,可以覆盖页面上其他的元素,并且可以通过z-index属性来控制这些层的对方顺序。例如,如果一个元素设置了绝对定位,它会相对于最近的已定位的祖先元素(或者如果没有的话,是html元素)定位,其位置不会受到文档流中其他元素的影响。

固定定位的元素不会随着滚动条的拖动而改变位置,它们的位置在视觉上不会改变。固定定位的元素同样脱离文档流,并且可以通过z-index属性来控制这些层的对方顺序。例如,如果一个元素设置了固定定位,那么无论页面如何滚动,它都会停留在同一的位置。

总结来说,绝对定位和固定定位都允许元素在页面上产生位移,并且脱离正常的文档流。绝对定位是相对于已定位的祖先元素(或html元素)进行定位,而固定定位则是相对于视口进行定位的。

二、设置最佳视野

/*
* 绘制标注
* markerArr,后台坐标数据;
* type,0默认加载,1搜索加载,2圆形区域搜索加载
* */
function getMaker(markerArr, type) {var allponits = [];for (var i = 0; i < markerArr.length; i++) {var p0 = markerArr[i].poi_lon;var p1 = markerArr[i].poi_lat;var cat = markerArr[i].poi_type;if (type == 2) {cat = 0;//显示icon0图标}var txt = markerArr[i].poi_name;var pos = new BMap.Point(p0, p1);var marker = addMarker(pos, cat, txt);addInfoWindow(marker, markerArr[i]);//是否显示文本标签;if (type == 1 || type == 0 || type == 2) {addLabel(pos, txt, cat);}//是否设置最佳视野POI;//allponits.push(pos);}map.setViewport(allponits);
}

map.setViewport(allponits);这个函数是用来设置地图的视野范围,也就是在地图上显示哪些区域。这个函数的参数是一个数组,这个数组里的元素是Point对象,这些对象代表了地图上的经纬度坐标点。遍历markerArr数组,取出每一个元素中的经纬度信息,生成一个Point对象,然后将这个Point对象加入到allPoints数组中。最后,使用map.setViewport(allPoints)函数,设置地图的视野范围为allPoints数组中所有点构成的区域。

三、指定地图中心

首次加载指定地图中心,搜索时自动调整初始化时的中心点及缩放级别。

/*百度地图API功能
* data,一级数据;
* type,来源是否是搜索0否1是2圆形区域加载;
* */
var map;function intMap(markerArr, type) {map = new BMap.Map("map", {enableMapClick: false});if (type == 1) {map.centerAndZoom(new window.BMap.Point(markerArr[0].poi_lon, markerArr[0].poi_lat), 13);} else {map.centerAndZoom(new window.BMap.Point(120.106563, 30.318838), 13);}map.enableScrollWheelZoom();//添加缩放控件var ctrlNav = new window.BMap.NavigationControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT,type: BMAP_NAVIGATION_CONTROL_LARGE});map.addControl(ctrlNav);//数据标注;getMaker(markerArr, type);}

map.centerAndZoom方法用于初始化地图,设置初始化时的中心点及缩放级别。该方法接受两个参数,第一个参数可以是根据之前创建好的一个点为中心,创建出地图,也可以根据城市地区的中文名称创建地图。第二个参数是地图缩放级别,最大为19,最小为0。

四、H5获取导航坐标

//H5获取导航坐标
function getH5Nav(lng, lat, title, address) {//console.log(title);var lnglat = bd09togcj02(lng, lat);//显示导航栏$(".navi").css("display", "block");$(".navi").html('<p id="baidu" οnclick="location.href=\'https://api.map.baidu.com/geocoder?location=' + lat + ',' + lng + '&coord_type=bd09ll&output=html&src=lockdatav\'"><a>百度导航</a></p>' +'<p id="gaode" οnclick="location.href=\'https://uri.amap.com/marker?position=' + lnglat[0] + ',' + lnglat[1] + '&name=' + address + '&src=lockdatav\'"><a>高德导航</a></p>' +'<p id="tengxun" οnclick="location.href=\'https://apis.map.qq.com/uri/v1/marker?marker=coord:' + lnglat[1] + ',' + lnglat[0] + ';title:' + title + ';addr:' + address + '&referer=myapp\'"><a>腾讯导航</a></p>' +'<p οnclick="cancelMenu();">取消</p>');
}//隐藏导航菜单;
function cancelMenu() {$(".navi").css("display", "none");
}

五、微信小程序环境配置

1.地图调起导航

//地图调起导航
function getNavi(id, lng, lat, name, address) {var lnglat = bd09togcj02(lng, lat);if (wxApp) {wx.miniProgram.redirectTo({url: '/pages/detail/detail?fromType=h5&poi_id=' + id + '&lng=' + lnglat[0] + '&lat=' + lnglat[1] + '&name=' + name + '&address=' + address,//跳转回小程序页面,传参success: function () {console.log('成功跳回小程序')},fail: function () {console.log('跳转回小程序页面失败');},});} else {console.log('未在小程序宿主环境');}
}

2.返回小程序首页

//返回小程序首页
function getMiniIndex() {if (wxApp) {wx.miniProgram.redirectTo({url: '/pages/lockgis/lockgis',success: function () {console.log('成功跳回小程序')},fail: function () {console.log('跳转回小程序页面失败');},});}
}

六、H5与微信调用页

主要是通过不同默认页来适应不同环境,调用各级菜单。

1.H5默认页

https//test.com/app.php
https//test.com/app.php?m=Index&a=rooted

2.微信小程序默认页

https//test.com/app.php?m=Index&a=mini

@漏刻有时

这篇关于漏刻有时地理信息系统LOCKGIS主程序配置说明(地图调起弹窗、图像标注、设置最佳视野、指定地图中心、H5获取导航、微信小程序环境识别)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/250512

相关文章

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

SpringMVC高效获取JavaBean对象指南

《SpringMVC高效获取JavaBean对象指南》SpringMVC通过数据绑定自动将请求参数映射到JavaBean,支持表单、URL及JSON数据,需用@ModelAttribute、@Requ... 目录Spring MVC 获取 JavaBean 对象指南核心机制:数据绑定实现步骤1. 定义 Ja

Nginx 配置跨域的实现及常见问题解决

《Nginx配置跨域的实现及常见问题解决》本文主要介绍了Nginx配置跨域的实现及常见问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来... 目录1. 跨域1.1 同源策略1.2 跨域资源共享(CORS)2. Nginx 配置跨域的场景2.1

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

SQLite3命令行工具最佳实践指南

《SQLite3命令行工具最佳实践指南》SQLite3是轻量级嵌入式数据库,无需服务器支持,具备ACID事务与跨平台特性,适用于小型项目和学习,sqlite3.exe作为命令行工具,支持SQL执行、数... 目录1. SQLite3简介和特点2. sqlite3.exe使用概述2.1 sqlite3.exe

PostgreSQL 默认隔离级别的设置

《PostgreSQL默认隔离级别的设置》PostgreSQL的默认事务隔离级别是读已提交,这是其事务处理系统的基础行为模式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一 默认隔离级别概述1.1 默认设置1.2 各版本一致性二 读已提交的特性2.1 行为特征2.2

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2