<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>3D地图展示</title><style type="text/css">
html{height:100%}
body{height:100%;margin:0px;padding:0px}
#container{height:90%;width:100%}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.1&services=true">
//引用百度地图API
</script></head><body>
<div id="container">
</div><input id="checkbox" name="checkbox" type="checkbox" >发表微博
<br><input type="Text" name="age" value=" " align="MIDDLE" size="50" maxlength="200">
</body>
</html>
<script type="text/javascript">
var i=1;
var er=new Array(999);
//创建和初始化地图函数:
function initMap(){
createMap();//创建地图
setMapEvent();//设置地图事件
addMapControl();//向地图添加控件
addUserEvent();//
}
//创建地图函数:
function createMap(){
var map = new BMap.Map("container", {mapType:BMAP_PERSPECTIVE_MAP});//创建地图为3D类型
var point = new BMap.Point(113.359,23.145);map.setCurrentCity("广州"); //定义一个中心点坐标
map.centerAndZoom(point,19);//设定地图的中心点和坐标并将地图显示在地图容器中
window.map = map;//将map变量存储在全局
}
//地图事件设置函数:
function setMapEvent(){
map.enableKeyboard();//启用键盘操作功能
map.enableDragging();//启用地图拖拽事件,默认启用(可不写)
map.disableScrollWheelZoom();//禁用地图滚轮放大缩小 默认禁用
map.disableDoubleClickZoom();//关闭双击放大功能 默认开启
}
//地图控件添加函数:
function addMapControl(){
var ctrl_nav = new BMap.NavigationControl ({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_SMALL}); //向地图中添加缩放控件
map.addControl(ctrl_nav);//向地图中添加缩略图控件
var ctrl_ove = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT});
map.addControl(ctrl_ove);
var ctrl_sca = new BMap.ScaleControl()
map.addControl(ctrl_sca);//比例尺控件
}
function addUserEvent(){map.addEventListener("click",function(e){ if(checkbox.checked==true) { point = new BMap.Point(e.point.lng, e.point.lat); er[i] = new BMap.Marker(point); map.addOverlay(er[i] ); er[i].addEventListener("rightclick", function(){
er[i].openInfoWindow(new BMap.InfoWindow("World"));
}); i=i+1 ; }})
}//添加标注
initMap();//创建和初始化地图</script>以上为代码 按道理右键标注会出现信息窗口 可是没反应 不知代码哪里有问题
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>3D地图展示</title><style type="text/css">
html{height:100%}
body{height:100%;margin:0px;padding:0px}
#container{height:90%;width:100%}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.1&services=true">
//引用百度地图API
</script></head><body>
<div id="container">
</div><input id="checkbox" name="checkbox" type="checkbox" >发表微博
<br><input type="Text" name="age" value=" " align="MIDDLE" size="50" maxlength="200">
</body>
</html>
<script type="text/javascript">
var i=1;
var er=new Array(999);
//创建和初始化地图函数:
function initMap(){
createMap();//创建地图
setMapEvent();//设置地图事件
addMapControl();//向地图添加控件
addUserEvent();//
}
//创建地图函数:
function createMap(){
var map = new BMap.Map("container", {mapType:BMAP_PERSPECTIVE_MAP});//创建地图为3D类型
var point = new BMap.Point(113.359,23.145);map.setCurrentCity("广州"); //定义一个中心点坐标
map.centerAndZoom(point,19);//设定地图的中心点和坐标并将地图显示在地图容器中
window.map = map;//将map变量存储在全局
}
//地图事件设置函数:
function setMapEvent(){
map.enableKeyboard();//启用键盘操作功能
map.enableDragging();//启用地图拖拽事件,默认启用(可不写)
map.disableScrollWheelZoom();//禁用地图滚轮放大缩小 默认禁用
map.disableDoubleClickZoom();//关闭双击放大功能 默认开启
}
//地图控件添加函数:
function addMapControl(){
var ctrl_nav = new BMap.NavigationControl ({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_SMALL}); //向地图中添加缩放控件
map.addControl(ctrl_nav);//向地图中添加缩略图控件
var ctrl_ove = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT});
map.addControl(ctrl_ove);
var ctrl_sca = new BMap.ScaleControl()
map.addControl(ctrl_sca);//比例尺控件
}
function addUserEvent(){map.addEventListener("click",function(e){ if(checkbox.checked==true) { point = new BMap.Point(e.point.lng, e.point.lat); er[i] = new BMap.Marker(point); map.addOverlay(er[i] ); er[i].addEventListener("rightclick", function(){
er[i].openInfoWindow(new BMap.InfoWindow("World"));
}); i=i+1 ; }})
}//添加标注
initMap();//创建和初始化地图</script>以上为代码 按道理右键标注会出现信息窗口 可是没反应 不知代码哪里有问题
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>3D地图展示</title><style type="text/css">
html{height:100%}
body{height:100%;margin:0px;padding:0px}
#container{height:90%;width:100%}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.1&services=true">
//引用百度地图API
</script></head><body>
<div id="container">
</div><input id="checkbox" name="checkbox" type="checkbox" >发表微博
<br><input type="Text" id="age" name="age" value=" " align="MIDDLE" size="50" maxlength="200">
</body>
</html>
<script type="text/javascript">
var i=1;
var er=new Array(999);
var temp=new Array(999);//创建和初始化地图函数:
function initMap(){
createMap();//创建地图
setMapEvent();//设置地图事件
addMapControl();//向地图添加控件
addUserEvent();//
}
//创建地图函数:
function createMap(){
var map = new BMap.Map("container", {mapType:BMAP_PERSPECTIVE_MAP});//创建地图为3D类型
var point = new BMap.Point(113.359,23.145);map.setCurrentCity("广州"); //定义一个中心点坐标
map.centerAndZoom(point,19);//设定地图的中心点和坐标并将地图显示在地图容器中
window.map = map;//将map变量存储在全局
}
//地图事件设置函数:
function setMapEvent(){
map.enableKeyboard();//启用键盘操作功能
map.enableDragging();//启用地图拖拽事件,默认启用(可不写)
map.disableScrollWheelZoom();//禁用地图滚轮放大缩小 默认禁用
map.disableDoubleClickZoom();//关闭双击放大功能 默认开启
}
//地图控件添加函数:
function addMapControl(){
var ctrl_nav = new BMap.NavigationControl ({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_SMALL}); //向地图中添加缩放控件
map.addControl(ctrl_nav);//向地图中添加缩略图控件
var ctrl_ove = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT});
map.addControl(ctrl_ove);
var ctrl_sca = new BMap.ScaleControl()
map.addControl(ctrl_sca);//比例尺控件
}
function addUserEvent(){map.addEventListener("click",function(e){ if(checkbox.checked==true) { point = new BMap.Point(e.point.lng, e.point.lat); er[i] = new BMap.Marker(point); map.addOverlay(er[i] ); temp[i]= document.getElementById('age').value; er[i].addEventListener("mouseover", function(){
this.openInfoWindow(new BMap.InfoWindow( temp[i]));
}); i=i+1 ; }})
}//添加标注
initMap();//创建和初始化地图</script>如何在不同标注出现的信息窗口显示不同信息 信息是通过文本框传递的 上面代码没反应 不知道是不是temp[i]这个数组有什么问题
http://blog.csdn.net/wangyan8877/article/details/6703522这篇文章能帮助你