google.GIS小例子
var map; var array = [[41.774166667, 85.943055556], [43.864052, 87.560499]];//经纬度
var array1 = ["地点1", "地点2"]; var latitude = 0; var longitude = 0; var markersArray = []; var title = "新疆"; var openInfo = "";
function initialize() { var i = 0;
var k = 0;
var myLatlng = new google.maps.LatLng(41.774166667, 85.943055556); //初始定位 var myOptions = {
zoom : 8, //地图的缩放程度 center : myLatlng, //地图中心位置 mapTypeId : google.maps.MapTypeId.ROADMAP, //常量ROADMAP以地图显示 常量SATELLITE为卫星显示 disableDoubleClickZoom : true //禁用双击缩放地图 }; //把地图绑定在ID为map_canvas的DIV上 map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); //循环将数据填充到一个新的marker对象中 for (i = 0; i < array.length; i++) { var myLatlng = new google.maps.LatLng(array[i][k], array[i][k + 1]);//重新定位 //显示信息 openInfo = array1[i];
//显示地址的标记图标 var marker = new google.maps.Marker({
position : myLatlng,
map : map,
icon : 'http://www.yiyacn.com/uploads/tubiaoimg/icon/fatcow_027.png' //自定义标记图标
});
marker.setTitle(title);
alertTitle(marker, openInfo);
}; //infowindow.open(map); //加载时显示提示主窗口 var infowindow;
var infowindow2;
//提示信息窗口 function alertTitle(marker, openInfo) { //鼠标悬浮在标记上打开提示信息窗口 google.maps.event.addListener(marker, 'mouseover', function (event) {
infowindow2 = infowindow;
infowindow = new google.maps.InfoWindow({
content : openInfo,
position : myLatlng
});
if (infowindow2 != null) {
infowindow2.close();
}
infowindow.open(map, marker); }); //鼠标离开标记关闭提示信息窗口 //google.maps.event.addListener(marker, 'mouseout', function(event) { //infowindow.close(); //}); }; //给map添加双击事件 google.maps.event.addDomListener(map, 'dblclick', function (event) { placeMarker(event.latLng);
CreateDiv(event.latLng); }); //添加新的标识 function placeMarker(location) {
if (infowindow2 != null) {
infowindow2.close();
}
if (infowindow != null) {
infowindow.close();
}
marker = new google.maps.Marker({
position : location,
map : map,
title : title,
icon : 'http://www.yiyacn.com/uploads/tubiaoimg/icon/fatcow_027.png' //自定义标记图标 });
clearOverlays();
markersArray.push(marker); //把marker对象添加到markersArray数组中 map.setCenter(location); //重新定位中心位置
} //创建操作层 function CreateDiv(location) {
var array = location.toString().split(","); //经纬度
var contentString = '<div id="content">' +
'<div id="siteNotice">' +
'</div>' +
'<h1 id="firstHeading" class="firstHeading">选择操作</h1>' +
'<div id="bodyContent">' +
'<p><b>当前的纬度' + array[0] + ',经度' + array[1] + '</b></p>' +
'</div>' +
'</div>'; var infowindow = new google.maps.InfoWindow({
content : contentString
}); infowindow.open(map, marker); } //重置Map对象 function clearOverlays() {
//alert(markersArray); if (markersArray) {
for (i in markersArray) {
markersArray[i].setMap(null);
}
}
} } window.onload = initialize;
google.GIS小例子的更多相关文章
- Python-正则表达式及实战小例子
注意Python的字符串本身也用'\'转义,所以要特别注意,一般我们都建议使用Python的r前缀,就不用考虑转义的问题了 1,行的起始 例子:匹配‘cat’ 开头 patt=re.compile( ...
- 从源码编译安装PCL并运行第一个小例子
如何通过源码编译方式安装PCL 对于很多想学习PCL的同学而言,往往会被如何安装困扰很长时间.我就是这其中的一员,为了不让大家在安装问题上浪费太多时间,我决心写下这篇小小的随笔,希望对大家有所帮助. ...
- springmvc入门的第一个小例子
今天我们探讨一下springmvc,由于是初学,所以简单的了解一下 springmvc的流程,后续会持续更新... 由一个小例子来简单的了解一下 springmvc springmvc是spring框 ...
- java即时通信小例子
学习java一段时间了,今天写来一个即时通信的小例子练手在其过程中也学到了一些知识拿出来和大家分享,请路过的各位大神多多赐教... 好了下面讲一下基本的思路: 首先,编写服务器端的程序,简单点说吧就是 ...
- Runtime的几个小例子(含Demo)
一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.) 1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数); [runti ...
- bootstrap 模态 modal 小例子
bootstrap 模态 modal 小例子 <html> <head> <meta charset="utf-8" /> <title ...
- INI配置文件分析小例子
随手写个解析INI配置字符串的小例子 带测试 #include <iostream> #include <map> #include <string> #inclu ...
- JavaScript小例子:复选框全选
JavaScript小例子:复选框全选 这只是一个小例子,很简单,但是这个功能还是很常用的: 实现后效果如图: JavaScript代码: <script type="text/jav ...
- 【zTree】 zTree使用的 小例子
使用zTree树不是第一次了 但是 还是翻阅着之前做的 对照着 使用起来比较方便 这里就把小例子列出来 总结一下使用步骤 这样方便下次使用起来方便一点 使用zTree树的步骤: 1.首先 在 ...
随机推荐
- 理解js中__proto__和prototype的区别和关系
首先,要明确几个点:1.在JS里,万物皆对象.方法(Function)是对象,方法的原型(Function.prototype)是对象.因此,它们都会具有对象共有的特点.即:对象具有属性__proto ...
- uva 489 Hangman Judge
大意:电脑想个单词,玩家来猜.玩家输入一个个字母,若答案里有这个字母,则显示该单词中所有该字母.最终目标是显示答案所有字母.猜错7次,死: 注意特殊条件:1.玩家不断重复错误的字母,只算一次猜错.2. ...
- Maven 从svn下载后,pom.xml报错解决方案
Multiple annotations found at this line: - Execution default-testResources of goal org.apache.maven. ...
- CALayer anchorPoint 锚点始终为(0,0)
objc.io 学习 摘自原处修改 对层的属性详细了解可见这里 @interface ClockFace : CAShapeLayer@property (nonatomic, strong) NSD ...
- 在iis7上如何配置来看到asp报错
今天网站改版时碰到一个问题,客户要求老网站的地图等功能要保持,但是老网站是用asp开发的.我们可以直接利用老的数据库以及老的代码,但是部署到新的服务器上一直报错. 刚开始是404,后来是500...今 ...
- Oracle存储过程动态创建临时表/存储过程执行权限问题--AUTHID CURRENT_USER
关于Oracle存储过程执行权限问题的解决 http://blog.sina.com.cn/s/blog_6ceed3280101hvlo.html (2014-04-02 04:06:28) 转载▼ ...
- ionic的start-y属性初始化页面
混合式开发移动app,要实现的是初始化页面时不展示搜索框,让页面向上移动一定位移. <ion-content class="has-subheader" start-y=&q ...
- Fragment中的onKeyDown事件让Activity处理--处理特殊按键比如移动终端扫描
一些特殊按键事件需要在Activity中处理public void onKeyDown(int keyCode, KeyEvent event){ //让Activity处理 getActivity( ...
- Objective-C Memory Management
Objective-C Memory Management Using Reference Counting 每一个从NSObject派生的对象都继承了对应的内存管理的行为.这些类的内部存在一个称为r ...
- odi 12.2.1中访问excel文件
由于在odi 12.2.1中,必须使用jdk1.8,而jdk1.8中jdbc-odbc bridge已经不再支持,因此,可以使用Progress DataDirect SequeLink来充当jdbc ...