【百度地图API】如何调整结果面板的样式?如何获取指定页码的结果?
原文:【百度地图API】如何调整结果面板的样式?如何获取指定页码的结果?
摘要:
1、你是否想自定义查询后,结果面板的显示样式?
2、数据接口每次只返回10条结果,如何取到单独每一页的结果?
---------------------------------------------------------
一、如果自定义结果面板的样式?
我们通过数据接口拿到每一条数据,然后塞到自己想要的html结构里,如下:
if(cPNum > ){ str += '<ul class="result">'; temp.mk = []; for(var i=;i<cPNum;i++){ var pInfo = r.getPoi(i); var mk = new BMap.Marker(pInfo.point); mk.addEventListener('onmouseover',function(){ this.setTop(true); }); mk.addEventListener('onmouseout',function(){ this.setTop(false); }) map.addOverlay(mk); var lb = new BMap.Label(pInfo.title,{offset:new BMap.Size(,-)}); mk.setLabel(lb); str += '<li>'+ pInfo.title+'</li>'; temp.mk.push(pInfo.point); } map.setViewport(temp.mk) str += '</ul>';
//这里略去页码显示部分,只显示第一页数据。
$('result').innerHTML = str; }
然后再自己给这些生成的html写上样式:
<style> .rsContent{float:left;width:200px;border:#ccc solid 1px;margin-left:5px;display:inline;font-size:12px;line-height:20px;padding:5px;} .rsContent ul,.rsContent li{margin:;padding:;} .result{} .result li{list-style-type:none;border-bottom:#ccc solid 1px;} .pageList{} .pageList a{margin:0 5px;}</style>
这样就有现在的样式:

二、接下来是页码显示的部分。
当鼠标点击页码的时候,就获取该页的十条数据。onclick="l_search.gotoPage(i)"
if(pageNum > ){ pageStr += '<div class="pageList">'; for(var i =;i<pageNum;i++){ var j = i+; if(i != cPage){ pageStr += '<a href = "javascript:void(0)"
onclick="l_search.gotoPage('+i+')">' + j + '</a>' } else{ pageStr += j; } } pageStr += '</div>'; }
str += pageStr;
三、全部源代码如下,点击这里运行。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="keywords" content="百度地图,百度地图API,百度地图自定义工具,百度地图所见即所得工具" /><meta name="description" content="百度地图API自定义地图,帮助用户在可视化操作下生成百度地图" /><title>结果面板样式+制定页码结果</title><!--引用百度地图API--><link rel="stylesheet" type="text/css" href="http://api.map.baidu.com/res/11/bmap.css"/><script type="text/javascript" src="http://api.map.baidu.com/api?key=67bd734bd2ef5e5ccecfeccbb5a221ee&v=1.1&services=true"></script><!--script type="text/javascript" src="http://wxp.baidu.com/bugxiufu/api/api.js"></script--><style> .rsContent{float:left;width:200px;border:#ccc solid 1px;margin-left:5px;display:inline;font-size:12px;line-height:20px;padding:5px;} .rsContent ul,.rsContent li{margin:0;padding:0;} .result{} .result li{list-style-type:none;border-bottom:#ccc solid 1px;} .pageList{} .pageList a{margin:0 5px;}</style></head><body> <!--百度地图容器--> <div style="width:597px;height:550px;border:#ccc solid 1px;float:left;" id="dituContent"></div> <div id="result" class="rsContent"></div> </body><script type="text/javascript"> function $(id) { return document.getElementById(id); } var map = new BMap.Map("dituContent"); var point = new BMap.Point(116.331398,39.897445); map.centerAndZoom(point,12); map.enableScrollWheelZoom(); var temp = {}; var l_search = new BMap.LocalSearch(map,{ onSearchComplete : function(r){ map.clearOverlays(); var pageNum = r.getNumPages(); var cPage = r.getPageIndex(); var cPNum = r.getCurrentNumPois(); var str = ''; var pageStr = ''; if(cPNum > 0){ str += '<ul class="result">'; temp.mk = []; for(var i=0;i<cPNum;i++){ var pInfo = r.getPoi(i); var mk = new BMap.Marker(pInfo.point); mk.addEventListener('onmouseover',function(){ this.setTop(true); }); mk.addEventListener('onmouseout',function(){ this.setTop(false); }) map.addOverlay(mk); var lb = new BMap.Label(pInfo.title,{offset:new BMap.Size(10,-20)}); mk.setLabel(lb); str += '<li>'+ pInfo.title+'</li>'; temp.mk.push(pInfo.point); } map.setViewport(temp.mk) str += '</ul>'; if(pageNum > 1){ pageStr += '<div class="pageList">'; for(var i =0;i<pageNum;i++){ var j = i+1; if(i != cPage){ pageStr += '<a href = "javascript:void(0)" onclick="l_search.gotoPage('+i+')">' + j + '</a>' } else{ pageStr += j; } } pageStr += '</div>'; } str += pageStr; $('result').innerHTML = str; } } }); l_search.search("1");</script></html>
【百度地图API】如何调整结果面板的样式?如何获取指定页码的结果?的更多相关文章
- Android通过百度地图API用Service和Alarm在后台定时获取地理位置信息
本文主要介绍了Android项目集成百度地图API,使用AlarmManager定时调用Service,在Service中请求坐标更新,并通过坐标得到省.市和县三级地理位置信息的方法. 程序结构很简单 ...
- 【百度地图API】如何制作自定义样式的公交导航结果面板?
原文:[百度地图API]如何制作自定义样式的公交导航结果面板? 摘要: 百度地图API有默认的公交导航结果面板,但样式比较单一:而百度地图上的结果面板就比较美观.如何利用百度地图API来制作一个比较美 ...
- 百度地图api的覆盖物样式与bootstrap样式冲突解决办法
使用百度地图api 和 bootstrap ,发现标注样式出现了问题 label左侧 宽度变得非常窄 正常情况下应该是下面这样的: 原因是boostrap样式和百度地图样式冲突了. 解决办法: .ba ...
- 百度地图api简单使用方法
百度地图API的使用方法 百度地图API 开始学习百度地图API最简单的方式是看一个简单的示例.以下代码创建了一个520x340大小的地图区域并以天安门作为地图的中心: 1. <html&g ...
- 百度地图API的使用方法
百度地图API 开始学习百度地图API最简单的方式是看一个简单的示例.以下代码创建了一个520x340大小的地图区域并以天安门作为地图的中心: 1. <html> 2. <head& ...
- 百度地图API开发指南
简介什么是百度地图API? 百度地图API是一套由JavaScript语言编写的应用程序接口,它能够帮助您在网站中构建功能丰富.交互性强的地图应用.百度地图API包含了构建地图基本功能的各种接口,提供 ...
- 百度地图API使用介绍
百度地图API 开始学习百度地图API最简单的方式是看一个简单的示例.以下代码创建了一个520x340大小的地图区域并以天安门作为地图的中心: 1. <html> 2. <head& ...
- H5微信通过百度地图API实现导航方式一
根据业务需求修改百度API,实现微信中的导航功能.因为源码中SearchInfoWindow_min.js有点小问题(部分小城市公交线路少,查不到路线时没有提示),所以这里在源码的基础上改了一点点.可 ...
- 百度地图API的使用
------------------自说自话----------------------------- 好奇怪,习惯性使用有道云笔记记录心得与知识后就很少用博客园来记录了. 但是后来想想,有些东西还是 ...
随机推荐
- 【C语言探索之旅】 第二课:工欲善其事,必先利其器
内容简介 1.课程大纲 2.第一部分第二课:工欲善其事,必先利其器 3.第一部分第三课预告:你的第一个程序 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C ...
- JCombox
A component that combines a button or editable field and a drop-down list. The user can select a val ...
- Jvascript方法
Jvascript实用方法 这篇我主要记录一些在工作中常用的.实用的方法. String trim 字符串方法中的trim主要用来去空格使用,很多时候,在后台做参数处理的时候,我们都会使用该方法, ...
- 汉字Collection
只是上一行Demo private static string[] HanZis = new string[]{ "啊阿呵吖嗄腌锕爱矮挨哎碍癌艾唉哀蔼隘埃皑呆嗌嫒瑷暧捱砹嗳锿霭按安暗岸俺案鞍 ...
- 【转】Android 4.3源码下载及问题解决
[html] view plaincopy 1 2 3 4 5 6 7 8 9 10 11 jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~$ cat /et ...
- Android使用开发WebView战斗技能
转载请注明出处:http://blog.csdn.net/allen315410/article/details/44619181 前段时间做项目的时候.在项目中用了WebView组件,遇到了一些问题 ...
- JAVA学习(二):JDK介绍及其结构、用途
JDK介绍及其结构.用途 1.JDK的介绍 JDK是Java Development Kit 的缩写.是Sun Microsystems针对Java开发员的产品.它由一个处于操作系统层之上的执行环境还 ...
- HTTP长连接和短连接(转)
1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接.HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议.IP协议主要解决网络路由和寻址问 ...
- Zero Downtime Upgrade of Oracle 10g to Oracle 11g Using GoldenGate — 3
DDL Setup Steps SQL> grant execute on utl_file to ggs; Grant succeeded. Create GLOBALS file [orac ...
- Cytoscape画图初探
Cytoscape是一个做网络图的js插件.用起来非常方便,并且非常强大.这是它的站点:点击打开链接 使用它须要导入两个文件,一个是js文件,一个是css文件.官网上下载. 这里实现了一个功能.即从后 ...