js调用百度地图及调用百度地图的搜索功能


Posted in Javascript onSeptember 07, 2015

js调用百度地图的方法

代码如下:

<!DOCTYPE html>
<html>
<head>
 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>Hello, World</title>
 <style type="text/css">
  html
  {
   height: 100%;
  }
  body
  {
   height: 50%;
   margin: 0px;
   padding: 0px;
  }
  #container
  {
   width:600px;
   height: 500px;
  }
 </style>
 <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3"></script>
</head>
<body onload="loand()">
 <div id="container">
 </div>
 <input id="lng" type="hidden" runat="server" />
 <input id="lat" type="hidden" runat="server" />
 <input id="Button1" type="button" value="标记图标" runat="server" onclick="getbiaoji()" />
 <script type="text/javascript">
  function getbiaoji() {
   var lng = document.getElementByIdx_x("lng").value;
   var lat = document.getElementByIdx_x("lat").value;
   var map = new BMap.Map("container");
   var point = new BMap.Point(lng, lat);
   var marker = new BMap.Marker(point);
   var opts = {
    width: 250,  // 信息窗口宽度 
    height: 100,  // 信息窗口高度 
    title: "经销商地址" // 信息窗口标题 
   }
   var infoWindow = new BMap.InfoWindow("移动拖拽 标记经销商地址:" + lng + lat, opts); // 创建信息窗口对象
   marker.enableDragging(); //启用拖拽
   map.addControl(new BMap.NavigationControl()); //左上角控件
   map.enableScrollWheelZoom(); //滚动放大
   map.enableKeyboard(); //键盘放大
   map.centerAndZoom(point, 13); //绘制地图
   map.addOverlay(marker); //标记地图
   map.openInfoWindow(infoWindow, map.getCenter());
  }
  function loand() {
   var map = new BMap.Map("container");
   var point = new BMap.Point(104.083, 30.686); //默认中心点
   var marker = new BMap.Marker(point);
   var opts = {
    width: 250,  // 信息窗口宽度 
    height: 100,  // 信息窗口高度 
    title: "经销商地址" // 信息窗口标题 
   }
   var infoWindow = new BMap.InfoWindow("移动拖拽 标记经销商地址", opts); // 创建信息窗口对象
   marker.enableDragging(); //启用拖拽
   marker.addEventListener("dragend", function (e) {
    point = new BMap.Point(e.point.lng, e.point.lat); //标记坐标(拖拽以后的坐标)
    marker = new BMap.Marker(point);
    document.getElementByIdx_x("lng").value = e.point.lng;
    document.getElementByIdx_x("lat").value = e.point.lat;
    infoWindow = new BMap.InfoWindow("当前位置<br />经度:" + e.point.lng + "<br />纬度:" + e.point.lat, opts);
    map.openInfoWindow(infoWindow, point);
   })
   map.addControl(new BMap.NavigationControl()); //左上角控件
   map.enableScrollWheelZoom(); //滚动放大
   map.enableKeyboard(); //键盘放大
   map.centerAndZoom(point, 13); //绘制地图
   map.addOverlay(marker); //标记地图
   map.openInfoWindow(infoWindow, map.getCenter());  // 打开信息窗口  
  }
 </script>
</body>
</html>

js调用百度地图搜索

引用百度js Api

<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=xxxxxxxxxxxx"></script>

创建地址解析器:

var localSearch = null;
//查询参数
var options = {
   //智能搜索
   onSearchComplete: function (results) {
    //查询结果状态码
    if (localSearch.getStatus() == BMAP_STATUS_SUCCESS) {
     var s = convertMapSearch(results); //对结果进行处理
     model.locationAddress(s); //将结果数据赋予knockout对象数组(可用其他数组对象代替)
    }
   }
  };
  localSearch = new BMap.LocalSearch("城市", options);

结合knockout的textInput绑定方法和对象的subscribe属性,实现输入框变化实时查询功能。

//绑定
<input id="txtAddress" type="text" placeholder="请输入用餐地址" data-bind="textInput: addressInput" />
//subscribe属性 在输入变化的时候执行地址查询
sf.addressInput.subscribe(function (val) {
   var addr = $.trim(val);
   if (addr == "") {
    return;
   }
   localSearch.search(addr);
  });

以上就是三水点靠木的小编给大家分享的js调用百度地图及调用百度地图的搜索功能,有关更多关于百度地图相关内容,请持续关注本站,本站没有都有新的内容更新。

Javascript 相关文章推荐
JavaScript是否可实现多线程  深入理解JavaScript定时机制
Dec 22 Javascript
Zero Clipboard js+swf实现的复制功能使用方法
Mar 07 Javascript
JavaScript 事件系统
Jul 22 Javascript
Javascript Request获取请求参数如何实现
Nov 28 Javascript
JavaScript 中 avalon绑定属性总结
Oct 19 Javascript
jquery.zclip轻量级复制失效问题
Jan 08 Javascript
JS常见算法详解
Feb 28 Javascript
详解JavaScript数组过滤相同元素的5种方法
May 23 Javascript
JavaScript之class继承_动力节点Java学院整理
Jul 03 Javascript
es6函数之rest参数用法实例分析
Apr 18 Javascript
JS 图片压缩原理与实现方法详解
Apr 29 Javascript
详解JS数组方法
Nov 20 Javascript
js实现可折叠展开的手风琴菜单效果
Sep 07 #Javascript
原生JS实现美图瀑布流布局赏析
Sep 07 #Javascript
js实现全国省份城市级联下拉菜单效果代码
Sep 07 #Javascript
纯javascript代码实现计算器功能(三种方法)
Sep 07 #Javascript
jQuery满屏焦点图左右滚动特效代码分享
Sep 07 #Javascript
jquery中表单 多选框的一种巧妙写法
Sep 06 #Javascript
jquery中val()方法是从最后一个选项往前读取的
Sep 06 #Javascript
You might like
判断、添加和删除WordPress置顶文章的相关PHP函数小结
2015/12/10 PHP
PHP自定义函数格式化json数据示例
2016/09/14 PHP
php获取访问者浏览页面的浏览器类型
2017/01/23 PHP
两个select之间option的互相添加操作(jquery实现)
2009/11/12 Javascript
zShowBox 图片放大展示jquery版 兼容性
2011/09/24 Javascript
jquery 无限级下拉菜单的简单实现代码
2014/02/21 Javascript
jQuery实现contains方法不区分大小写的方法
2015/02/13 Javascript
node.js 使用ejs模板引擎时后缀换成.html
2015/04/22 Javascript
javascript中日期函数new Date()的浏览器兼容性问题
2015/09/05 Javascript
Bootstrap学习笔记之css样式设计(1)
2016/06/07 Javascript
JavaScript中apply方法的应用技巧小结
2016/09/29 Javascript
AngularJS学习第一篇 AngularJS基础知识
2017/02/13 Javascript
react-native 完整实现登录功能的示例代码
2017/09/11 Javascript
微信小程序三级联动选择器使用方法
2020/05/19 Javascript
vue视图不更新情况详解
2019/05/16 Javascript
如何正确理解vue中的key详解
2019/11/02 Javascript
Vuex实现数据增加和删除功能
2019/11/11 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
JS常用排序方法实例代码解析
2020/03/03 Javascript
JS控制下拉列表左右选择实例代码
2020/05/08 Javascript
Python绘制3D图形
2018/05/03 Python
python使用threading.Condition交替打印两个字符
2019/05/07 Python
python实现mean-shift聚类算法
2020/06/10 Python
python用700行代码实现http客户端
2021/01/14 Python
Vichy薇姿加拿大官网:法国药妆,全球专业敏感肌护肤领先品牌
2018/07/11 全球购物
linux下进程间通信的方式
2013/01/23 面试题
介绍一下Ruby的特点
2013/01/20 面试题
偷看我的初中毕业鉴定
2014/01/29 职场文书
新学期国旗下演讲稿
2014/05/08 职场文书
农民工讨薪标语
2014/06/26 职场文书
公司聚餐通知
2015/04/22 职场文书
宣传委员竞选稿
2015/11/19 职场文书
《田忌赛马》教学反思
2016/02/19 职场文书
《实心球》教学反思
2016/02/23 职场文书
python周期任务调度工具Schedule使用详解
2021/11/23 Python
css3中2D转换之有趣的transform形变效果
2022/02/24 HTML / CSS