如果要描图的话 需要加载 相应的地图api 库 怎样描点要根据 api的格式 比如 , 我用baidu 的api 需要的是数组格式
那么代码 是这样的
function getGps_msg(cur_date){
var rt_array=new Array();
cur_phone_no=$("#user_list").val();
$.ajax({
type:"get",
url:"json_gps.php",
async:false,
dataType:"json",
data:{cur_date:cur_date,phone_no:cur_phone_no},
success: function(msg){
for (var i=0;i<msg.length;i++){
rt_array[String(i)]=msg[i];
}
}
});
return rt_array;
}
得到你一个描点的数组了. 再去描点
function drawPion(data_arr){
//var data_arr=getGps_msg();
//alert (data_arr);
bm.clearOverlays();
var cx=data_arr['0']['longitude'];
var cy=data_arr['0']['latitude'];
bm.centerAndZoom(new BMap.Point(cx,cy),18);
var dianshu=0;
for (var i=0;i<data_arr.length;i++){
var msg=data_arr[i]['rec_time'];
var lab_msg="";
var xx= data_arr[i]['longitude'];
var yy= data_arr[i]['latitude'];
//alert (i);
var markergps = new BMap.Marker(new BMap.Point(xx,yy));
//bm.addOverlay(markergps,i); //添加GPS标注
if (dianshu==9){
bm.addOverlay(markergps,i); //添加GPS标注
dianshu=0;
}else{
dianshu++;
}
if(i==0){
//var markergps = new BMap.Marker(new BMap.Point(xx,yy));
bm.addOverlay(markergps,i); //添加GPS标注
lab_msg="最后位置";
}
if(data_arr[i]['img_file_path']!==""){
//var markergps = new BMap.Marker(new BMap.Point(xx,yy));
bm.addOverlay(markergps,i); //添加GPS标注
lab_msg+="[图]";
var sContent ="<img style='float:right;margin:4px' id='imgDemo"+i+"' src='"+data_arr[i]['img_file_path']+"' width='320' height='240' title="photo"/>";
addClickHandler(sContent,markergps);
}
if (i==data_arr.length-1){
//var markergps = new BMap.Marker(new BMap.Point(xx,yy));
bm.addOverlay(markergps,i); //添加GPS标注
lab_msg="开始位置";
}
var labelgps = new BMap.Label(i+lab_msg,{offset:new BMap.Size(20,-10)});
markergps.setLabel(labelgps,i); //添加GPS标注
}
}
得到效果