<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Map</title> <style type="text/css">
body {
margin: 0;
padding: 0;
} img {
border-radius: 5px;
} .image_border {
border: 2px solid red !important;
width: 46px !important;
height: 54px !important;
} #content {
width: 800px;
height: 1000px;
border: 1px solid navy;
margin: auto;
padding: auto;
}
</style> <script src="http://localhost/static/js/jquery-2.1.0.min.js" type="text/javascript" ></script>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp"></script>
</head> <body> <div id='content'>
<div id="map_canvas" style="width:100%; height:100%"></div>
</div> </body>
</html> <script type="text/javascript"> // 地图描点列表对象
var location_list = [
{'id':'1', 'name':'user01', 'image_url':'./image/photo_1.png', 'longitude':'-34.397', 'latitude':'150.644'},
{'id':'2', 'name':'user02', 'image_url':'./image/photo_2.png', 'longitude':'-33.397', 'latitude':'151.644'},
{'id':'3', 'name':'user03', 'image_url':'./image/photo_3.png', 'longitude':'-35.397', 'latitude':'150.644'}
]; /**
*
* 初始化
*
*/
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(-34.397, 150.644), // 显示地图的中心点位置
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
}; var map = new google.maps.Map(
document.getElementById("map_canvas"),
mapOptions
); google_maps_add_location(map);
} /**
*
* 添加需要在地图上显示的点
*
*/
function google_maps_add_location(map) {
for (var i = 0; i < location_list.length; i++) {
add_location(map, location_list[i]);
add_polyline(map, location_list[0], location_list[i]);
};
} /**
*
* 添加单个地图描点
* 并为此描点添加click事件
*
*/
function add_location(map, location) { var image = location.image_url;
var myLatLng = new google.maps.LatLng(location.longitude, location.latitude);
var beachMarker = new google.maps.Marker({
position: myLatLng,
map: map,
icon: image,
title: location.name,
zIndex: 0,
// 单独的层,可以为这个层添加CSS效果等,如果为true,此层和地图层将被视为一体
// 比如将图片变成圆角图片 border-radius: 5px;
optimized:false
}); google.maps.event.addListener(beachMarker, 'click', function(){
alert('id:' + location.id + ', name:' + location.name);
$('#map_canvas img').removeClass('image_border');
$('#map_canvas img[src="./image/photo_' + location.id + '.png"]').addClass('image_border');
});
} /**
*
* 为用户画关系线
*
*/
function add_polyline(map, current_location, object_location) {
var flightPlanCoordinates = [
new google.maps.LatLng(current_location.longitude, current_location.latitude),
new google.maps.LatLng(object_location.longitude, object_location.latitude)
]; var flightPath = new google.maps.Polyline({
path: flightPlanCoordinates,
geodesic: true,
strokeColor: '#FF0000',
strokeOpacity: 1.0,
strokeWeight: 2
}); flightPath.setMap(map);
} // 初始监听事件
google.maps.event.addDomListener(window, 'load', initialize);
</script>

  

google map 点与点画线的更多相关文章

  1. Google Map API V3开发(1)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  2. Google Map API V3开发(3)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  3. Google Map API 使用总结

    Google Map API (一):显示一个最基本的地图 1 实现一个地图:<head>中引用: <script type="text/javascript" ...

  4. Android中Google地图路径导航,使用mapfragment地图上画出线路(google map api v2)详解

    在这篇里我们只聊怎么在android中google map api v2地图上画出路径导航,用mapfragment而不是mapview,至于怎么去申请key,manifest.xml中加入的权限,系 ...

  5. Google Map JavaScript API V3 实例大全

    Google Map JavaScript API V3 实例大全 基础知识 简单的例子 地理位置 语言 位置 坐标 简单的投影 事件 简单事件 关闭事件 多次添加事件 事件属性 控制 php禁用ui ...

  6. Google Map API v2 步步为营 (二)----- Location

    接上篇. 改造一下MapsActivity: public class MapsActivity extends Activity implements LocationListener, InfoW ...

  7. 爬坑之路---Google map

    google.maps.event.adddDomListen(window, 'load', callback);当文档流中所有的dom加载完成后,执行回调函数,可以不用在script中使用defe ...

  8. 房产地图google map的初步应用点滴.4)(转)

    房产地图google map的初步应用点滴.1) 房产地图google map的初步应用点滴.2) 房产地图google map的初步应用点滴.3) 房产地图google map的初步应用点滴.4) ...

  9. Google Map API 应用实例说明

    目录 Google Map API 1基础知识 1.1 Google 地图 API 概念 1.2 Google 地图的"Hello, World" 1.2.1 加载 Google ...

随机推荐

  1. 深入研究Block用weakSelf、strongSelf、@weakify、@strongify解决循环引用(上)

    深入研究Block捕获外部变量和__block实现原理 前言 在上篇中,仔细分析了一下Block的实现原理以及__block捕获外部变量的原理.然而实际使用Block过程中,还是会遇到一些问题,比如R ...

  2. Java中数组的快排

    描述输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符.   输入 第一行输入一个数N,表示有N组测试数据.后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成, ...

  3. oracle的控制语句if和循环语句loop while for

    pl/sql的控制结构if-then if-then-else if-then-elsif-else 案例1:编写一个过程,可以输入一个雇员名,如果该雇员的工资低于2000,就给该雇员工资增加10% ...

  4. [课程相关]homework-02

    一.如何组织代码 因为这个代码比较简单,用函数就足够了,个人觉得没必要用类,杀鸡不必用牛刀. 代码有点长,主要是加了很多判断参数的部分. 提取了一个公共的递归函数. 用了不少全局变量,可能当做参数传入 ...

  5. [改善Java代码]适当设置阻塞队列长度

    阻塞队列BlockingQueue扩展了Queue,Collection接口,对元素的插入和提取使用了"阻塞"处理,我们知道Collection下的实现类一般都采用了长度自行管理方 ...

  6. Jedis操作Redis数据库

    添加Maven依赖: <dependencies> <!-- 单元测试 --> <dependency> <groupId>junit</grou ...

  7. 关于JDK中采用单例模式的类

    JDK设计模式应用——单例模式(Singleton) <JDK源码分析>的分支,讲解设计模式在jdk中使用. 我们从三个方面讲述,一是:jdk源码中的设计模式:二是:讲解设计模式(UML图 ...

  8. CygWin模拟Linux环境进行Ant批量打包

    运行环境:Windows7 + Cygwin + ant 第一种:有源码 这种方式比较 简单.利用ant打包.直接shell脚本修改 配置渠道号的文件.我们目前是用的umeng的.在AndroidMa ...

  9. Socket编程初探

    一.什么是Socket? 通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.在Internet上的主机一般运行了多个服务软件,同时提供几种服务.每种服务都打开一个S ...

  10. SharePoint手机App巅峰对决:rShare 挑战 SharePlus

    真是个移动的时代,当我们去百度,Bing,雅虎等搜索引擎,搜索关键字比如“SharePoint iOS”, “SharePoint 安卓”, “SharePoint iPhone”,“SharePoi ...