麻烦求指教JS基础问题。。 我要做一个地图相关的web项目,已经实现获取当前经纬度标记,如何引用JS来实现后面的标记多个经纬度标记然后连成一个轨迹。 已经有现成代码。。 但是不懂要怎么引用,本人新手。。 = = 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <SCRIPT type=text/javascript> //<![CDATA[ GMarker.prototype.setIndex = function(index) { this.index = index; } var map; var polyline; var ers = []; //通过复制产生 var myIcon= new GIcon(G_DEFAULT_ICON, "http://www.google.com/mapfiles/er.png"); //创建地标 function createMarker(point) { var er = new GMarker(point, {icon: myIcon, draggable: true, bouncy: true}); var index = ers.length; //双击地标删除该地标 GEvent.addListener(er, 'dblclick', function() { deleteMarker(er); }); //dragstart事件,换新图标 GEvent.addListener(er, 'dragstart', function() { er.setImage("http://www.google.com/mapfiles/dd-start.png"); }); //dragend事件,换回原图标 GEvent.addListener(er, 'dragend', function() { er.setImage("http://www.google.com/mapfiles/er.png"); }); //单击显示形成安排 GEvent.addListener(er, 'click', function() { er.openInfoWindowHtml("干些什么呢?"); }); //drag事件 //注意,如果添加了polyline,则拖动地标时需要重画路线 GEvent.addListener(er, 'drag', function() { redrawPolyline(); }); er.setIndex(index); ers[index] = er; map.addOverlay(er); //每创建一个新的地标就重画一次 redrawPolyline(); } //双击地标删除该地标 function deleteMarker(er) { //确定是否真的删除 if(!confirm("确定删除该地标吗?")) return; var index = er.index; //移除该图层 map.removeOverlay(er); //从数组中删除指定GMarker并更新index for(var i = index; i<ers.length-1; i++) { ers[i+1].setIndex(i); ers[i] = ers[i+1]; } ers.length = ers.length-1; } function load() { if (GBrowserIsCompatible()) { map = new GMap2(document.getElementById("map")); map.addControl(new GSmallMapControl()); map.addControl(new GMapTypeControl()); var centerPoint= new GLatLng(39.92, 116.46); map.setCenter(centerPoint, 4); GEvent.addListener(map, 'click', function(overlay, point) { if(point) createMarker(point); }); } } //添加行程路线 function addPolyline() { //创建 var points = []; for(var i=0; i<ers.length; i++) { points[i] = ers[i].getPoint(); } polyline = new GPolyline( points, //GLatLng()数组 "#FF0000", //折线颜色 10, //折线宽度 0.5 //透明度 ); map.addOverlay(polyline); } //删除行程路线 function removePolyline() { polyline.remove(); polyline = null; } //重画行程路线 function redrawPolyline() { if(polyline) { removePolyline(); } addPolyline(); } //]]> </SCRIPT> 这是现成JS代码。。 画轨迹的话用canvas或者是flash比较好, 求格式化JSON的正则表达式 新手,求推荐jQuery的画图插件,最好有API firefox下如何判断页面是刷新的还是关闭的? 控制DIV显示隐藏 如何通过JAVASCRIPT将当前的页面保存到服务器的目录中 js如法加裁,急需要帮助解决。谢谢。 select 更改选中项 拜托,简单的事情为什么总被弄的那么复杂?请货币判断的正则表达式 刚刚开始学习js,大家都用什么工具写js啊?介绍一下吧!:) 一个简单的js提取值的问题~~~ 求购js关于操作cookie制作观影历史记录功能代码 实现页面后台连接sql数据库,ajax前台显示数据库表的代码
//<![CDATA[
GMarker.prototype.setIndex = function(index)
{
this.index = index;
}
var map;
var polyline;
var ers = [];
//通过复制产生
var myIcon= new GIcon(G_DEFAULT_ICON, "http://www.google.com/mapfiles/er.png");
//创建地标
function createMarker(point)
{
var er = new GMarker(point, {icon: myIcon, draggable: true, bouncy: true});
var index = ers.length;
//双击地标删除该地标
GEvent.addListener(er, 'dblclick', function()
{
deleteMarker(er);
});
//dragstart事件,换新图标
GEvent.addListener(er, 'dragstart', function()
{
er.setImage("http://www.google.com/mapfiles/dd-start.png");
});
//dragend事件,换回原图标
GEvent.addListener(er, 'dragend', function()
{
er.setImage("http://www.google.com/mapfiles/er.png");
});
//单击显示形成安排
GEvent.addListener(er, 'click', function()
{
er.openInfoWindowHtml("干些什么呢?");
});
//drag事件
//注意,如果添加了polyline,则拖动地标时需要重画路线
GEvent.addListener(er, 'drag', function()
{
redrawPolyline();
});
er.setIndex(index);
ers[index] = er;
map.addOverlay(er);
//每创建一个新的地标就重画一次
redrawPolyline();
}
//双击地标删除该地标
function deleteMarker(er)
{
//确定是否真的删除
if(!confirm("确定删除该地标吗?")) return;
var index = er.index;
//移除该图层
map.removeOverlay(er);
//从数组中删除指定GMarker并更新index
for(var i = index; i<ers.length-1; i++)
{
ers[i+1].setIndex(i);
ers[i] = ers[i+1];
}
ers.length = ers.length-1;
}
function load()
{
if (GBrowserIsCompatible())
{
map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
var centerPoint= new GLatLng(39.92, 116.46);
map.setCenter(centerPoint, 4);
GEvent.addListener(map, 'click', function(overlay, point)
{
if(point) createMarker(point);
});
}
}
//添加行程路线
function addPolyline()
{
//创建
var points = [];
for(var i=0; i<ers.length; i++)
{
points[i] = ers[i].getPoint();
}
polyline = new GPolyline(
points, //GLatLng()数组
"#FF0000", //折线颜色
10, //折线宽度
0.5 //透明度
);
map.addOverlay(polyline);
}
//删除行程路线
function removePolyline()
{
polyline.remove();
polyline = null;
}
//重画行程路线
function redrawPolyline()
{
if(polyline)
{
removePolyline();
}
addPolyline();
}
//]]>
</SCRIPT> 这是现成JS代码。。