地图上显示点在点上标注当前点的id
HTML:
<div class="form-group field-company-state">
<div style="width:1000px;height:500px;border:0px solid gray" id="container"></div>
</div>
php:
$model = Concentrator::find()->where(['in', 'company_id', $companyIds])->all();
$concentratorArray = [];
foreach($model as $concentrator) {
$concentratorArray[] = [
'name' => "<p>名称:".$concentrator->name ." <a href='/distributor/device/list?c=".$concentrator->id."' class='btn btn-success btn-xs'>查看</a></p>" . "<p>编号:" . $concentrator->number . "</p>" . "<p>状态:$concentrator->isOnlineText</p>",
'latitude' => $concentrator->latitude,
'longitude' => $concentrator->longitude,
'number' => $concentrator->number
];
}
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=<?=Yii::$app->params['baiduMapAk'];?>"></script>
<script>
//百度地图
var map = new BMap.Map("container");
//添加鼠标滚动缩放
map.enableScrollWheelZoom();
//添加缩放平移控件
map.addControl(new BMap.NavigationControl());
//添加比例尺控件
map.addControl(new BMap.ScaleControl());
var point = new BMap.Point('119.163431', '36.71894');
map.centerAndZoom(point,13);
var longitude_latitude = <?=json_encode($data);?>;
var opts = {
width : 250, // 信息窗口宽度
height: 100, // 信息窗口高度
/*title : "信息窗口" , // 信息窗口标题*/
enableMessage:true//设置允许信息窗发送短息
};
var label;
for(var i=0;i<longitude_latitude.length;i++){
point = new BMap.Point(longitude_latitude[i].longitude, longitude_latitude[i].latitude);
var marker = new BMap.Marker(new BMap.Point(longitude_latitude[i].longitude,longitude_latitude[i].latitude)); // 创建标注
var content = longitude_latitude[i].name;
map.addOverlay(marker); // 将标注添加到地图中
addClickHandler(content,marker);
label = new BMap.Label(longitude_latitude[i].number, {position : point,offset : new BMap.Size(-17, -25)}); // 创建文本标注对象
label.setStyle({
color : "#fff",
backgroundColor:"red",
maxWidth:"none",
fontSize : "12px",
fontFamily:"微软雅黑"
});
map.addOverlay(label);
}
function addClickHandler(content,marker){
marker.addEventListener("click",function(e){
openInfo(content,e)}
);
}
function openInfo(content,e){
var p = e.target;
var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat);
var infoWindow = new BMap.InfoWindow(content,opts); // 创建信息窗口对象
map.openInfoWindow(infoWindow,point); //开启信息窗口
}
</script>
地图上显示点在点上标注当前点的id的更多相关文章
- JavaScript总结-网页上显示时间
网页上显示时间 代码如下: <TABLE> <TR> <TD><span id="localtime"></span> ...
- [Xcode 实际操作]四、常用控件-(17)为MKMapView地图上显示提示框
目录:[Swift]Xcode实际操作 本文将演示当点击地图上的标注圆点时,弹出信息窗口. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit ...
- html5定位并在百度地图上显示
在开发移动端 web 或者webapp时,使用百度地图 API 的过程中,经常需要通过手机定位获取当前位置并在地图上居中显示出来,这就需要用到html5的地理定位功能. navigator.geolo ...
- OpenLayers在地图上显示统计图,饼图线状图柱状图,修复统计图跳动的问题
环境介绍 Openlayers ol.js v5.3.0 Highcharts highcharts.js v7.0.1 jquery jquery-3.3.1.js v3.3.1 显示效果 地图放大 ...
- html5定位获取当前位置并在百度地图上显示
用html5的地理定位功能通过手机定位获取当前位置并在地图上居中显示出来,下面是百度地图API的使用过程,有需要的朋友可以参考下 在开发移动端 web 或者webapp时,使用百度地图 API 的过程 ...
- 百度地图API显示多个标注点带检索框
通过百度地图的api,可以在地图上显示多个标注点,并给所有的标注点实现了带检索功能的信息框 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 T ...
- 百度地图API显示多个标注点并添加百度样式检索窗口
原作者博客地址:http://blog.csdn.net/a497785609/article/details/24009031 在此基础上进行了修改: 1.添加闭包,将i传入内部 2.添加地图和卫星 ...
- 百度地图API显示多个标注点,解决提示信息问题以及给标注增加地图旁的文字连接提示的另一种解决办法
原文:百度地图API显示多个标注点,解决提示信息问题以及给标注增加地图旁的文字连接提示的另一种解决办法 公司的网站改版要求在一个页面显示百度地图.上面要同时显示很多标注点,标注点当然要有提示信息嘛,提 ...
- 【百度地图API】如何利用自己的数据制作社交地图?只显示可视区域内的标注
原文:[百度地图API]如何利用自己的数据制作社交地图?只显示可视区域内的标注 摘要:如果你自己的数据已经超过1万个,如何进行合理的显示?除了聚合marker外,还有一个办法.那就是,只显示可视区域内 ...
随机推荐
- Hive Sql的日常使用笔记
date: 2019-03-22 17:02:37 updated: 2020-04-08 16:00:00 Hive Sql的日常使用笔记 1. distinct 和 group by distin ...
- B. Two Fairs 解析(思維、DFS、組合)
Codeforce 1276 B. Two Fairs 解析(思維.DFS.組合) 今天我們來看看CF1276B 題目連結 題目 給一個連通圖,並給兩個點(\(a,b\)),求有多少點對使得:任一路徑 ...
- Kubernetes Scheduler浅析
概述 Kubernetes 调度器(Scheduler)是Kubernetes的核心组件:用户或者控制器创建Pod之后,调度器通过 kubernetes 的 watch 机制来发现集群中新创建且尚未被 ...
- 从原生web组件到框架组件源码(二)
innerHTML outerHTML textContent innerText 区别 <div id="test"> <span>sdsdsdsd &l ...
- win10安装linux子系统(wsl)
win10安装linux子系统(wsl) 1.打开Microsoft Store 方式一:在电脑左下角打开 方式二:在电脑左下角的搜索里里输入Microsoft Store 打开Microsoft S ...
- Python3网络学习案例二:traceroute详解
1. 写在前面 本文是基于上一篇"ping详解"写的: 不同操作系统下的命令也不同,本文仅针对windows系统,命令为"tracert xxx",效果如下 2 ...
- 【SpringBoot】09.SpringBoot整合Freemarker
SpringBoot整合Freemarker 1.修改pom文件,添加坐标freemarker启动器坐标 <project xmlns="http://maven.apache.org ...
- 使用JAVA API读取HDFS的文件数据出现乱码的解决方案
使用JAVA api读取HDFS文件乱码踩坑 想写一个读取HFDS上的部分文件数据做预览的接口,根据网上的博客实现后,发现有时读取信息会出现乱码,例如读取一个csv时,字符串之间被逗号分割 英文字符串 ...
- 内核搞笑的bug不少
- JAVA 去除字符串前后的指定字符
为了显示效果更好,我们可以将多余的字符去掉,代码如下: /** *去掉字符串前后的指定字符 */ public static String trimBothChars(String str, Stri ...