JS文件代码:
var map = null;
var currentMobile;
var ifPassEage=0;function pageLoad()
{
resizeDiv();
}
//加载地图-------------
function initialize()
{
var map = new BMap.Map("myMap");
var point = new BMap.Point(XXX.XXXXXX, XX.XXXXXX);
map.centerAndZoom(point, 15);
map.addControl(new BMap.NavigationControl());
map.addControl(new BMap.ScaleControl());
map.addControl(new BMap.OverviewMapControl());
map.addControl(new BMap.MapTypeControl());
map.enableScrollWheelZoom();
map.enableContinuousZoom(); }//当前定位
function CurrentPosition(sMobile)
{
currentMobile = sMobile;
//调用webservice,同时设置结果返回处理函数
standard_v5.PointsClass7.ReturnCurrentPoint(currentMobile,DrawCurrentPosition);
}var updatetime;function DrawCurrentPosition(result)
{
index = 0;
if(result.length == 0)
{
alert("对不起,无此人定位信息!");
return;
}
ifPassEage = 0;
AddMarker(result);//当前定位
}function resizeDiv()
{
docWidth = document.documentElement.clientWidth;
docHeight = document.documentElement.clientHeight;
document.getElementById("myMap").style.width = docWidth - 300 - 3;
document.getElementById("myMap").style.height = docHeight - 60 - 50 - 4;
}
var updatetime;
function AddMarker(result)
{
for(var i=0;i<result.length;i++)
{
//添加标记(定位点)
var lat=result[i].Y.toString();
var lng=result[i].X.toString();
var map = new BMap.Map("myMap");
var point = new BMap.Point(lat,lng);
var er = new BMap.Marker(point);
er.enableDragging(); //启用拖拽 map.addControl(new BMap.NavigationControl()); //左上角控件
map.enableScrollWheelZoom(); //滚动放大
map.enableKeyboard(); //键盘放大
map.centerAndZoom(point, 13); //绘制地图
map.addOverlay(er); //标记地图
AddInfoWin(result[i].Time,result[i].Position,point);//标记信息
}
}function AddInfoWin(content,Position,point)
{ var map = new BMap.Map("myMap");
var er = new BMap.Marker(point);
var showinfo_Html;
if(Position.length==0)
{
showinfo_Html= "<p style='text-align:left;margin:0;'>时间:"+ content +"</p>" ;
}
else
{
showinfo_Html= "<p style='text-align:left;margin:0;'>时间:"+ content +"</p><p style='text-align:left;margin:0;'>状态:"+Position+ "</p>";
}
alert(showinfo_Html);
var opts = {
width: 300, // 信息窗口宽度
height: 100, // 信息窗口高度
title: "" // 信息窗口标题
}
var infoWindow = new BMap.InfoWindow(showinfo_Html, opts); // 创建信息窗口对象
map.centerAndZoom(point, 13); //绘制地图
map.addOverlay(er); //标记地图
er.addEventListener("click", function(){
this.openInfoWindow(infoWindow);
});
}此程序是通过读取数据库获得坐标,然后在地图上显示坐标点
现在坐标点在地图上显示了,点击坐标,也弹出框了,框里面也有数据了,但是此时地图却没能显示出来,现在地图一片空白,除了那个坐标点莫非在转到新的坐标点之前,地图要先清空map.clearOverlays() ?
var map = null;
var currentMobile;
var ifPassEage=0;function pageLoad()
{
resizeDiv();
}
//加载地图-------------
function initialize()
{
var map = new BMap.Map("myMap");
var point = new BMap.Point(XXX.XXXXXX, XX.XXXXXX);
map.centerAndZoom(point, 15);
map.addControl(new BMap.NavigationControl());
map.addControl(new BMap.ScaleControl());
map.addControl(new BMap.OverviewMapControl());
map.addControl(new BMap.MapTypeControl());
map.enableScrollWheelZoom();
map.enableContinuousZoom(); }//当前定位
function CurrentPosition(sMobile)
{
currentMobile = sMobile;
//调用webservice,同时设置结果返回处理函数
standard_v5.PointsClass7.ReturnCurrentPoint(currentMobile,DrawCurrentPosition);
}var updatetime;function DrawCurrentPosition(result)
{
index = 0;
if(result.length == 0)
{
alert("对不起,无此人定位信息!");
return;
}
ifPassEage = 0;
AddMarker(result);//当前定位
}function resizeDiv()
{
docWidth = document.documentElement.clientWidth;
docHeight = document.documentElement.clientHeight;
document.getElementById("myMap").style.width = docWidth - 300 - 3;
document.getElementById("myMap").style.height = docHeight - 60 - 50 - 4;
}
var updatetime;
function AddMarker(result)
{
for(var i=0;i<result.length;i++)
{
//添加标记(定位点)
var lat=result[i].Y.toString();
var lng=result[i].X.toString();
var map = new BMap.Map("myMap");
var point = new BMap.Point(lat,lng);
var er = new BMap.Marker(point);
er.enableDragging(); //启用拖拽 map.addControl(new BMap.NavigationControl()); //左上角控件
map.enableScrollWheelZoom(); //滚动放大
map.enableKeyboard(); //键盘放大
map.centerAndZoom(point, 13); //绘制地图
map.addOverlay(er); //标记地图
AddInfoWin(result[i].Time,result[i].Position,point);//标记信息
}
}function AddInfoWin(content,Position,point)
{ var map = new BMap.Map("myMap");
var er = new BMap.Marker(point);
var showinfo_Html;
if(Position.length==0)
{
showinfo_Html= "<p style='text-align:left;margin:0;'>时间:"+ content +"</p>" ;
}
else
{
showinfo_Html= "<p style='text-align:left;margin:0;'>时间:"+ content +"</p><p style='text-align:left;margin:0;'>状态:"+Position+ "</p>";
}
alert(showinfo_Html);
var opts = {
width: 300, // 信息窗口宽度
height: 100, // 信息窗口高度
title: "" // 信息窗口标题
}
var infoWindow = new BMap.InfoWindow(showinfo_Html, opts); // 创建信息窗口对象
map.centerAndZoom(point, 13); //绘制地图
map.addOverlay(er); //标记地图
er.addEventListener("click", function(){
this.openInfoWindow(infoWindow);
});
}此程序是通过读取数据库获得坐标,然后在地图上显示坐标点
现在坐标点在地图上显示了,点击坐标,也弹出框了,框里面也有数据了,但是此时地图却没能显示出来,现在地图一片空白,除了那个坐标点莫非在转到新的坐标点之前,地图要先清空map.clearOverlays() ?
var map = null;
var currentMobile;
var ifPassEage=0;
function pageLoad()
{
resizeDiv();
}
//加载地图-------------
function initialize()
{
///var map = new BMap.Map("myMap");
map = new BMap.Map("myMap");
var point = new BMap.Point(XXX.XXXXXX, XX.XXXXXX);
map.centerAndZoom(point, 15);
map.addControl(new BMap.NavigationControl());
map.addControl(new BMap.ScaleControl());
map.addControl(new BMap.OverviewMapControl());
map.addControl(new BMap.MapTypeControl());
map.enableScrollWheelZoom();
map.enableContinuousZoom();
}
//当前定位
function CurrentPosition(sMobile)
{
currentMobile = sMobile;
//调用webservice,同时设置结果返回处理函数
standard_v5.PointsClass7.ReturnCurrentPoint(currentMobile,DrawCurrentPosition);
}
var updatetime;
function DrawCurrentPosition(result)
{
index = 0;
if(result.length == 0)
{
alert("对不起,无此人定位信息!");
return;
}
ifPassEage = 0;
AddMarker(result);//当前定位
}
function resizeDiv()
{
docWidth = document.documentElement.clientWidth;
docHeight = document.documentElement.clientHeight;
document.getElementById("myMap").style.width = docWidth - 300 - 3;
document.getElementById("myMap").style.height = docHeight - 60 - 50 - 4;
}
var updatetime;
function AddMarker(result)
{
for(var i=0;i<result.length;i++)
{
//添加标记(定位点)
var lat=result[i].Y.toString();
var lng=result[i].X.toString();
////////////var map = new BMap.Map("myMap");//////////去掉,使用初始化中的变量
var point = new BMap.Point(lat,lng);
var er = new BMap.Marker(point);
er.enableDragging(); //启用拖拽
map.addControl(new BMap.NavigationControl()); //左上角控件
map.enableScrollWheelZoom(); //滚动放大
map.enableKeyboard(); //键盘放大
map.centerAndZoom(point, 13); //绘制地图
map.addOverlay(er); //标记地图
AddInfoWin(result[i].Time,result[i].Position,point);//标记信息
}
}
function AddInfoWin(content,Position,point)
{
/////var map = new BMap.Map("myMap");///////
var er = new BMap.Marker(point);
var showinfo_Html;
if(Position.length==0)
{
showinfo_Html= "<p style='text-align:left;margin:0;'>时间:"+ content +"</p>" ;
}
else
{
showinfo_Html= "<p style='text-align:left;margin:0;'>时间:"+ content +"</p><p style='text-align:left;margin:0;'>状态:"+Position+ "</p>";
}
alert(showinfo_Html);
var opts = {
width: 300, // 信息窗口宽度
height: 100, // 信息窗口高度
title: "" // 信息窗口标题
}
var infoWindow = new BMap.InfoWindow(showinfo_Html, opts); // 创建信息窗口对象
map.centerAndZoom(point, 13); //绘制地图
map.addOverlay(er); //标记地图
er.addEventListener("click", function(){
this.openInfoWindow(infoWindow);
});
}
问题找到了
var lat=result[i].Y.toString();
var lng=result[i].X.toString();
var point = new BMap.Point(lat,lng);
其中只要把lat和lng的位置换一下就可以了,也就是说,应该是
var point = new BMap.Point(lng,lat); 也谢谢版主,设置全局变量解决了页面原先存在的一个脚本问题