google地图的路线实现代码


Posted in Javascript onAugust 20, 2009
<script language="javascript" type="text/javascript"> 
//add by ahuinan 2009-8-17 
//initialize(23.165613663312594,113.35968017578125) 
var map; 
var gdir; 
var marker2; 
var hasMarker = false; 
var hotelLatLng = new GLatLng(<%=initxy %>);//初始化酒店的坐标 
var polyline; 
var points = []; 
points[1] = hotelLatLng; 
function initialize() { 
if (GBrowserIsCompatible()) { 
map = new GMap2(document.getElementById("divMap"), { googleBarOptions: { showOnLoad: true} }); 
gdir = new GDirections(map); 
map.setCenter(hotelLatLng, 9); 
map.addControl(new GOverviewMapControl()); 
map.addControl(new GLargeMapControl()); //加入搜索框 
map.enableGoogleBar(); 
map.enableScrollWheelZoom(); 
//创建酒店的标注,不可拖动 
var hotelMarker = new GMarker(new GLatLng(<%=initxy %>)); 
map.addOverlay(hotelMarker); 
//鼠标左键可以建立一个标记, 
GEvent.addListener(map,"click",function(overlay,latlng,overlaylatlng){ 
if(latlng == null || hasMarker == true){ 
return; 
} 
var greenIcon = new GIcon(G_DEFAULT_ICON); 
greenIcon.image = "../googlemap/green-dot.png"; 
greenIcon.iconSize = new GSize(32,32); 
greenIcon.iconAnchor = new GPoint(16,32); 
greenIcon.shadowSize=new GSize(56,33); 
marker2 = new GMarker(latlng,{draggable: true,icon:greenIcon}); 
map.addOverlay(marker2); 
GEvent.addListener(marker2,"dragend",function(){ 
points[0] = marker2.getLatLng(); 
gdir.loadFromWaypoints(points,{"preserveViewport":true}); 

}) 
GEvent.addListener(gdir, "addoverlay", function(){ 
for (var i=0; i<=gdir.getNumRoutes(); i++){ 
var originalMarker = gdir.getMarker(i); 
map.removeOverlay(originalMarker); 
} 
polyline = gdir.getPolyline(); 

polyline.setStrokeStyle({color:"red",weight:2,opacity:1}); 
// map.addOverlay(polyline); 
}); 
hasMarker = true; 
points[0] = latlng; 
gdir.loadFromWaypoints(points,{"preserveViewport":true}); 
}) 
} 
} 
//按下添加按钮 
function add(){ 
if(points.length == 1){ 
alert("没有线路,终止操作"); 
}else{ 
window.opener.document.getElementById("txtHI_MapMarkDesc").value = window.opener.document.getElementById("txtHI_MapMarkDesc").value+"\n"+document.getElementById("txtName").value+"||||"+document.getElementById("txtType").value+"||||"+points[0]+"\n"; 
window.close(); 
} 
} 
window.onload = function() { 
initialize() 
} 
</script>
Javascript 相关文章推荐
基于Javascript实现弹出页面效果
Jan 01 Javascript
JS模仿手机端九宫格登录功能实现代码
Apr 28 Javascript
深入理解js中this的用法
May 28 Javascript
Angular 应用技巧总结
Sep 14 Javascript
JavaScript组成、引入、输出、运算符基础知识讲解
Dec 08 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
Nov 17 Javascript
vue弹窗消息组件的使用方法
Sep 24 Javascript
vue配置接口域名方法总结
May 12 Javascript
Angular 中使用 FineReport不显示报表直接打印预览
Aug 21 Javascript
关于layui的动态图标不显示的解决方法
Sep 04 Javascript
node.js开发辅助工具nodemon安装与配置详解
Feb 06 Javascript
前端vue+elementUI如何实现记住密码功能
Sep 20 Javascript
JavaScript 字符串乘法
Aug 20 #Javascript
javascript 短路法代码精简
Aug 20 #Javascript
斜45度寻路实现函数
Aug 20 #Javascript
javascript 多级checkbox选择效果
Aug 20 #Javascript
调用js时ie6和ie7,ff的区别
Aug 19 #Javascript
jquery 入门教程 [翻译] 推荐
Aug 17 #Javascript
jQuery select控制插件
Aug 17 #Javascript
You might like
ajax完美实现两个网页 分页功能的实例代码
2013/04/16 PHP
PHP编程风格规范分享
2014/01/15 PHP
Mac系统下安装PHP Xdebug
2018/03/30 PHP
关于图片验证码设计的思考
2007/01/29 Javascript
从父页面读取和操作iframe中内容方法
2009/07/25 Javascript
学习ExtJS border布局
2009/10/08 Javascript
js 数值项目的格式化函数代码
2010/05/14 Javascript
js将当前时间格式转换成时间搓(自写)
2013/09/26 Javascript
javascript实现简单的Map示例介绍
2013/12/23 Javascript
用C/C++来实现 Node.js 的模块(二)
2014/09/24 Javascript
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
Vue组件BootPage实现简单的分页功能
2016/09/12 Javascript
javascript 数组去重复(在线去重工具)
2016/12/17 Javascript
基于jQuery实现左侧菜单栏可折叠功能
2016/12/27 Javascript
jQuery实现的省市联动菜单功能示例【测试可用】
2017/01/13 Javascript
vue 打包后的文件部署到express服务器上的方法
2017/08/09 Javascript
原生js+cookie实现购物车功能的方法分析
2017/12/21 Javascript
js中的this的指向问题详解
2019/08/29 Javascript
继承行为在 ES5 与 ES6 中的区别详解
2019/12/24 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
[01:08]DOTA2“血战之命”预告片
2017/08/12 DOTA
python 写的一个爬虫程序源码
2016/02/28 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
2018/10/30 Python
让你Python到很爽的加速递归函数的装饰器
2019/05/26 Python
对django中foreignkey的简单使用详解
2019/07/28 Python
Python图像处理之图片文字识别功能(OCR)
2019/07/30 Python
Django中间件拦截未登录url实例详解
2019/09/03 Python
python groupby 函数 as_index详解
2019/12/16 Python
Python中的全局变量如何理解
2020/06/04 Python
主要的Ajax框架都有什么
2013/11/14 面试题
优秀食品类广告词
2014/03/19 职场文书
公司请假条范文
2014/04/11 职场文书
一次性工伤赔偿协议书范本
2014/11/25 职场文书
缅怀先烈主题班会
2015/08/14 职场文书
MySQL空间数据存储及函数
2021/09/25 MySQL
Python中字符串对象语法分享
2022/02/24 Python