百度地图的js导入及使用
做页面,地图可能会用到
1 导入百度地图的js库
<script type="text/javascript" src="http://api.map.baidu.com/getscript?v=1.4&ak=&services=&t=20150522093217"></script>
2 页面html相关标签
<div class="form-group">
<label class="control-label">地址:</label>
<input class="form-control input-md" ng-blur="initBap()"name="address" ng-model="address"/>
</div>
<!-- 百度地图显示区域 -->
<div class="form-group" id="container" style="width: 100%;height: 500px;"></div>
在这里,我是用了一个离焦事件,这个可以因情而异,另外我是angulatjs框架
3 下面就是js部分
/**
* 初始化地址
*/
$scope.address = null;
/**
* 初始化经度
*/
$scope.longitude = 121.48;
/**
* 初始化纬度
*/
$scope.latitude= 31.22;
/**
* 初始化百度地图
*/
$scope.initBap = function () {
$scope.map = new BMap.Map("container"); // 创建地图实例
$scope.map.centerAndZoom(new BMap.Point($scope.longitude, $scope.latitude), 18); // 初始化地图,设置中心点坐标和地图级别
$scope.map.addControl(new BMap.NavigationControl());
$scope.map.addControl(new BMap.ScaleControl());
$scope.map.addControl(new BMap.OverviewMapControl());
$scope.map.enableScrollWheelZoom(true);
// 创建地址解析器实例
$scope.myGeo = new BMap.Geocoder();
/**
* 监听地图点击事件,获取点击处建筑物名称
*/
$scope.map.addEventListener("click", function (e) {
var pt = e.point;
$scope.longitude = pt.lng;
$scope.latitude = pt.lat;
console.log( $scope.longitude+ "---"+$scope.latitude)
$scope.myGeo.getLocation(pt, function (rs) {
var addComp = rs.addressComponents;
/**
* 将获取到的建筑名赋值给$scope.address
*/
$scope.address = addComp.province != addComp.city ? addComp.province + addComp.city : addComp.city + addComp.district + addComp.street + addComp.streetNumber;
/**
* 通知angularjs更新视图
*/
$scope.$digest();
});
});
/**
* 初始化查询配置
* @type {BMap.LocalSearch}
*/
$scope.local = new BMap.LocalSearch($scope.map, {
renderOptions: {
map: $scope.map,
panel: "results",
autoViewport: true,
selectFirstResult: true
},
pageCapacity: 8
});
/**
* 监听地址改变事件,当地址输入框的值改变时
*/
$scope.$watch('address', function () {
/**
* 查询输入的地址并显示在地图上、调整地图视野
*/
$scope.local.search($scope.address);
/**
* 将输入的地址解析为经纬度
*/
$scope.myGeo.getPoint($scope.address, function (point) {
if (point) {
/**
* 将地址解析为经纬度并赋值给$scope.longitude和$scope.latitude
*/
$scope.longitude = point.lng;
$scope.latitude = point.lat;
}
});
});
};
4 以下为效果
可以点击获取经纬度
百度地图的js导入及使用的更多相关文章
- 百度地图android studio导入开发插件
百度地图SDK v3.5.0开发包下载地址:http://lbsyun.baidu.com/sdk/download?selected=location 开发工具 Android开发工具很多,在这我们 ...
- Ionic2使用百度地图API(JS)出现白屏解决方案
最近自学ionic2,写了一个内嵌百度地图JS的demo,实际跑起来之后出现了大家常见的白屏问题.. 最初的实现是这样的: 首先主页内嵌了一个百度地图插件 <div id="Bmap& ...
- echarts3.8.4实现城市空气质量(结合百度地图bmap.js,小航哥)
(小航哥自己实现的)为了事先地图效果,需要以下准备: 用百度地图作为地图,需要 1.bmap.min.js(下载地址https://github.com/ecomfe/echarts ,GitHub上 ...
- 百度地图和js操作iframe
document.getElementById("ifarme-63").contentWindow.document.getElementById("qksv" ...
- 已知两点经纬度(百度地图),用js求解两点之间的角度
采用的网址:https://my.oschina.net/boogoogle/blog/740478
- Qt的QWebChannel和JS、HTML通信/交互驱动百度地图
Qt的QWebChannel和JS.HTML通信/交互驱动百度地图 0 前言 我一个研究嵌入式的,不知道怎么就迷上了上位机,接了几个项目都是关于Qt,这个项目还是比较经典的,自己没事儿的时候也进行研究 ...
- ionic2如何调用百度地图
使用ionic2接入百度地图 在index.html中引入百度地图的js类库 <script type="text/javascript" src="http:// ...
- 苹果手机 微信调用百度地图Javascript API 频繁闪退问题
最近在网页中调用百度地图API js大众版,但是在IOS8系统中,缩放的时候频繁闪退,安卓手机没有这个问题! 在网上查询了下,有网友回答说不要频繁的去new marker,而是初始化话一定量的mark ...
- 百度地图 IOS版开发经验分享
最近刚完成app中地图的应用,感觉非常的曲折,折腾了很久,刚才开始一直不能成功使用百度地图api,报一大堆的错误,后来换到高德地图,又发现服务端使用的百度的经纬度,又从高德换回百度,泪奔. 这里简单比 ...
随机推荐
- Struts2框架之Action类的访问
1. 通过<action>标签中的method属性,访问到Action中的具体的方法. * 传统的配置方式,配置更清晰更好理解!但是扩展需要修改配置文件等! * 具体的实例如下: * 页面 ...
- vue项目优化之路由懒加载
const login = () =>import('@/views/login'); export default new Router({ routes:[ { path:'/login', ...
- SSI服务端包含技术
1.页面拆出来怎么样通过web服务浏览呢? 使用web服务(例如nginx)的SSI技术,将多个子页面合并渲染输出. 2.SSI是什么? 3. ssi包含类似于jsp页面中的incluce指令,ssi ...
- Jenkins与Git持续集成&&Linux上远程部署Java项目
一.环境搭建 1.安装所需软件 Jdk Maven Jenkins Tomcat Xshell git 以上软件去官网下载,比较简单,不一一描述了 2.安装所需的jenkins插件 Git plugi ...
- PAT 甲级 1023 Have Fun with Numbers(20)(思路分析)
1023 Have Fun with Numbers(20 分) Notice that the number 123456789 is a 9-digit number consisting exa ...
- iOS一段文字设置多种颜色格式
调用 [self fuwenbenLabel:contentLabel FontNumber:[UIFont systemFontOfSize:] AndRange:NSMakeRange(, ) A ...
- Linux 双网关(电信与联通)
经常有这种需求,一台Linux服务器配置电信IP和网通IP,默认情况下,后启动的网卡的网关生效.南电信北网通,配置电信和网通IP,无非是为了减少网络延时,使电信用户的请求响应在电信网络中传输,网通用户 ...
- base64编码是什么
首先明确一点base64 是一种编码格式.就想utf-8一样,能在电脑上表示所有字符,或者换句话说通过编码能让电脑理解你想要标识的字符(因为电脑只知道0和1 ) 就像ascII 中 0100 0001
- POI导出大量数据的简单解决方案
说明:我的电脑 2.0CPU 2G内存 能够十秒钟导出 20W 条数据 ,12.8M的excel内容压缩后2.68M 我们知道在POI导出Excel时,数据量大了,很容易导致内存溢出.由于Excel ...
- virtual、abstract、interface区别以及用法
virtual 用于在基类中的使用的方法,使用的情况为: 情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法.那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法. ...