转载请注明出处

本文为原创

作者:injuer

严禁用于商业用途,仅学习交流

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
#container{
width:100%;
height:100%;
}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=*******"></script>
</head> <body>
<div id="container"></div>
</body>
<script type="text/javascript">
var extMap = {
load : function(data, controls){
var map = new BMap.Map("container");
map.centerAndZoom(new BMap.Point(data.lng, data.lat), 12);
if(null != controls){
for(var i = 0; i < controls.length; i++){
map.addControl(controls[i]);
}
}
return map;
},
addData : function(map,data){
var marke = null;
var label = null;
var temp = null;
for(var i = 0; i < data.length; i++){
temp = data[i];
marke = new BMap.Marker(new BMap.Point(temp.lng, temp.lat));
marke.setTitle(temp.title);
if(null != temp.icon && "" != temp.icon){
marke.setIcon(new BMap.Icon(temp.icon, new BMap.Size(temp.icon_width, temp.icon_height)));
}
this.addMenu(marke, temp);
this.addMarkerEventListener(map, marke, temp);
this.addLabel(map, marke, temp);
}
return map;
},
addMenu : function(marke, data){
var ms = data.menu;
var m = null;
m = new BMap.ContextMenu();
for(var i = 0; i < ms.length; i++){
m.addItem(new BMap.MenuItem(ms[i].root, ms[i].fun));
}
marke.addContextMenu(m);
},
addMarkerEventListener : function(map, marke, data){
marke.addEventListener("click", function(event){
var w = extMap.createWindow(data);
marke.openInfoWindow(w);
});
map.addOverlay(marke);
},
addLabel : function(map, marke, data){
label = new BMap.Label(data.text);
label.setPosition(new BMap.Point(data.lng - 0.5 / 1000, data.lat));
label.show();
map.addOverlay(label);
},
createWindow : function(data){
var w = new BMap.InfoWindow(data.des, {
height : 0,
maxWidth : 0,
title : data.title,
enableMessage : true,
message : data.msg
});
return w;
}
} var data = new Array(); for(var i = 0; i < 3; i++){
data.push({
lng : 102.711 + (i /1000),
lat : 25.05 + (i /1000),
icon : null,
text : "这是内容" + i,
title : "<h5>这是标题</h5>" + i,
des : "这是描写叙述" + i,
msg : "这是短信" + i,
icon_width : 0,
icon_height : 0,
menu : [
{
root : "根文件夹0",
fun : function(){
alert("点击了根文件夹0");
},
},
{
root : "根文件夹1",
fun : function(){
alert("点击了根文件夹1");
}
},
{
root : "根文件夹2",
fun : function(){
alert("点击了根文件夹2");
}
}
]
});
} var map = extMap.addData(extMap.load(data[0], [
new BMap.ScaleControl(),
new BMap.OverviewMapControl(),
new BMap.NavigationControl()
]), data); </script>
</html>

百度地图JS--2的更多相关文章

  1. 百度地图--JS版

    百度地图JS版本 ----选择关键字地图展示对应地址---- CSS body, html { width: %; height: %; margin: ; font-family: "微软 ...

  2. 外部引入的js 判断js脚本加载是否完成,完成后执行 相应的动作(以引入百度地图js为例)

    可以使用JQuery的 $.getScript(url,function(){});方法 $.getScript("http://api.map.baidu.com/getscript?v= ...

  3. 百度地图js根据经纬度定位和拖动定位点

    <!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...

  4. 百度地图js版定位控件

    一 概述 百度地图在最新版已加入浏览器定位控件,个人认为应该是既高德地图更新了一个浏览器也能定位功能后,百度不甘落后自己简简单单,草草写了个这个功能的定位控件 GeolocationControl 这 ...

  5. 百度地图JS API不能使用position:fixed

    用于放置百度地图的dom元素及其任何一级父元素设置position:fixed属性时,js会报如下错误: Uncaught TypeError: Cannot read property 'offse ...

  6. 百度地图js lite api 支持点聚合

    百度地图lite api 是专门为h5 绘制海量点设计的,但是偏偏忽略掉了点聚合的需求,所以需要自己动手,做一次二次改造. 我们知道点聚合需要引入开源库: MarkerClusterer:  http ...

  7. 百度地图js小结

    1.获取javascript API 服务方法,首先申请密钥(ak),才可成功载入APIJS文件. 用法例如以下: <script type="text/javascript" ...

  8. 百度地图 JS API开发Demo01

    百度地图DEMO     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...

  9. 关于百度地图js api的getCurrentPosition定位不准确的解决方法

    很久之前帮大叔解决了一个gps坐标转换为百度地图坐标的问题.今天大叔又给我讲百度地图定位不准.我查了一下api,用了官方给出的这样一组函数. //创建查询对象 var geolocation = ne ...

  10. 百度地图 js api 实现 line 居中显示

    项目中有个需求需要在百度地图的中心显示画的线,以前用过mapPanto这个方法,传入坐标就可以将地图平移到这个坐标,不过不知道如何获取线的中心点,看了别人的代码,有以下两个函数可以实现这个功能 get ...

随机推荐

  1. Windows命令远程执行工具Winexe

    Windows命令远程执行工具Winexe   在对Windows系统执行渗透测试中,通过各种方式可以获取目标主机的用户名和密码.这时,只要对方主机开启文件共享服务,就可以借助Winexe工具远程执行 ...

  2. Knockout.js(三):计算属性(Computed Observable)

    在Knockout2.0之前,计算属性被称之为依赖属性,在2.0版本中,ko.dependentObservable重命名为ko.computed,因为它在读.解释和类型上更简单.在实际使用中,ko. ...

  3. BZOJ 2120 数颜色(带修改莫队)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2120 [题目大意] 给出一颜色序列,每次可以修改一个位置的颜色或者询问一个区间不同颜色 ...

  4. 【扫描线】Gym - 101190E - Expect to Wait

    假设初始人数为0, 将每个时刻在等待的人数写下来,就是求个和. 如果纵坐标看成人数,横坐标看成时间,就是求个面积. 因为初始人数不一定为零,所以离线后扫描线即可回答所有询问. #include< ...

  5. Delphi 中ASSERT用法

    http://blog.csdn.net/dongyonggan/article/details/5780979 用法:ASSERT(表达式) 如果为假,ASSERT会产生一个EASSERTIONFA ...

  6. sSkinProvider.pas

    unit sSkinProvider;{$I sDefs.inc}{.$DEFINE LOGGED} interface uses Windows, Messages, SysUtils, Class ...

  7. luci框架-LUA的一个web框架使用

    转自:http://blog.csdn.net/initphp/article/details/17527639 LUCI 这个在百度上搜索除了一篇我的百度文库 luci 的介绍文章之外,前三页都是些 ...

  8. 使用Gradle构建Android应用的渠道包

    所有做Android App的同志们应该都知道渠道包是什么,得力于Android生态的多样性,我等写Android应用的人类每次发布App都需要面对数十个市场,而为了能够采集到市场的表现数据,就必须为 ...

  9. opencv Mat 像素操作

    1 cv::Mat cv::Mat是一个n维矩阵类,声明在<opencv2/core/core.hpp>中.   class CV_EXPORTS Mat { public: //a lo ...

  10. NGUI自适应屏幕分辨率

    unity官方承诺的新ui系统一直没有推出来,我们的UI使用的是原生的OnGUI系统,刚好UI需要改版,索性就想迁到NGUI上面来,于是看了一下NGUI源码,发现NGUI可以大大的降低DrawCall ...