谷歌地图接口,实现点击标记获取经纬度等信息。

Google map api

Author chenbin
Date 12/12
Email [email protected]

标记在地图上的位置 并且获取当前位置的经纬度

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
    <title>Google Maps Demo</title>
    <script src="http://maps.google.com/maps/api/js?sensor=false" type="text/javascript"></script>
    <script type="text/javascript">
        var infowindow,marker;
        var geocoder = new google.maps.Geocoder();
        function initialize() {
            //var point = new google.maps.LatLng(18.252847, 109.511909);
            var point; // 地图中心

            if(navigator.geolocation) {
                navigator.geolocation.getCurrentPosition(function(position) {

                    point = new google.maps.LatLng(
                            position.coords.latitude,
                            position.coords.longitude
                    );
                    var myOptions = {
                        zoom: 15, // 缩放级别
                        center: point,
                        mapTypeId: google.maps.MapTypeId.ROADMAP, // 显示普通的街道地图
                        mapTypeControl: false, // 地图类型控件
                        overviewMapControl: false, // 总览图控件
                        scaleControl: false, // 比例控件
                        streetViewControl: false // 街景视图
                    };
                    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

                    //添加地图标记
                    marker = new google.maps.Marker({
                        position: point,
                        map: map
                    });
                    marker.setDraggable(true); // 设置可拖拽

                    //初始化信息窗口
                    infowindow = new google.maps.InfoWindow({
                        content: "",
                        size: new google.maps.Size(50,50)
                    });

                    //添加拖动监听事件
                    google.maps.event.addListener(marker, ‘dragend‘, function(){
                        showAddress(map, marker);
                    });
                    //添加点击监听事件

                    google.maps.event.addListener(map, ‘click‘, function(e) {
                        clickMou(map,marker,e.latLng);
                    });
                    showAddress(map,marker);
                }, function() {
                    handleNoGeolocation(true);
                });
            } else {
                // Browser doesn‘t support Geolocation
                handleNoGeolocation(false);
            }
        }
        function handleNoGeolocation(errorFlag) {
            if (!errorFlag) {
                point = new google.maps.LatLng(32.060255, 118.796877);
            }
        }
        function showAddress(map, marker)
        {
            var latlng = marker.getPosition();
            geocoder = new google.maps.Geocoder();

            //根据经纬度获取地址信息
            geocoder.geocode({‘latLng‘: latlng}, function(results, status) {
                if (status == google.maps.GeocoderStatus.OK) {
                    if (results[1]) {
                        var address = results[1].formatted_address + "<br />";
                        address = results[0].formatted_address + "<br />";
                        address += "纬度:" + latlng.lat() + "<br />";
                        address += "经度:" + latlng.lng();

                        infowindow.setContent(address);
                        infowindow.open(map, marker);
                    }
                } else {
                    alert("Geocoder failed due to: " + status);
                }
            });
        }

        function clickMou(map, marker,loc)
        {
            marker.setPosition(loc)

            //根据经纬度获取地址信息
            geocoder.geocode({‘latLng‘: loc}, function(results, status) {
                if (status == google.maps.GeocoderStatus.OK) {
                    if (results[1]) {
                        var address = results[1].formatted_address + "<br />";
                        address = results[0].formatted_address + "<br />";
                        address += "纬度:" + loc.lat() + "<br />";
                        address += "经度:" + loc.lng();

                        infowindow.setContent(address);
                        infowindow.open(map, marker);
                    }
                } else {
                    alert("Geocoder failed due to: " + status);
                }
            });

        }
    </script>
</head>

<body >
<div id="map_canvas" style="width: 600px; height: 400px"></div>
</body>
</html>

  

时间: 2024-08-10 17:17:29

谷歌地图接口,实现点击标记获取经纬度等信息。的相关文章

百度地图地点搜索和鼠标点击地点获取经纬度

百度地图地点搜索和鼠标点击地点获取经纬度,这些都是地图比较基本 效果图:如下 代码部分: <!DOCTYPE html><html>    <head>    <meta charset="utf-8">    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />

Google Map Api 谷歌地图接口整理

一:基本知识: 1. 使用谷歌地图 API 的第一步就是要注册一个 API 密钥,需要注重一下两点: 1.假如使用 API 的页面还没有发布,只是在本地调试,可以不用密钥,随便用个字符串代替就可以了. 2.API 密钥只对网站目录或者域有效.对不同域的网页,需要用这些域分别注册不同的密钥 2.页面引用javascript文件<script src="http://ditu.google.com/maps?file=api&hl=zh-CN&v=2&key=abcde

[WPF] 浏览百度地图并获取经纬度地址信息

项目中需要利用登记的区域和地址在百度地图上定位,并获取该地址的经纬度. 本次功能对我来说主要难点如下:1.百度地图API的基本使用方法,请首选使用百度地图的JavaScript大众版(PS:之前使用WebAPI会导致WebBrowser浏览出现很多问题):JavaScript大众版网址:http://developer.baidu.com/map/index.php?title=jspopular2.WPF WebBrowser控件中的JavaScript与WPF的交互:3.WPF WebBro

根据经纬度根据谷歌地图接口获取到当前地址

/*http://maps.google.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=true */ 上面的访问地址国内可能无法访问,国内可以访问以下地址 String url = "http://maps.google.cn/maps/api/geocode/json?latlng="+latitude+","+longitude+"&sensor=true&a

HTML5获取地理位置定位信息

HTML5提供了地理位置定位功能(Geolocation API),能确定用户位置,我们可以借助HTML5的该特性开发基于地理位置信息的应用.本文结合实例给大家分享如何使用HTML5,借助百度.谷歌地图接口来获取用户准确的地理位置信息. 如何使用HTML5地理位置定位功能 定位功能(Geolocation)是HTML5的新特性,因此只有在支持HTML5的现代浏览器上运行,特别是手持设备如iphone,地理定位更加精确.首先我们要检测用户设备浏览器是否支持地理定位,如果支持则获取地理信息.注意这个

Google地图接口API之地图事件(四)

演示几个地图事件: 1. 点击标记缩放地图 仍然使用上一遍文章使用的英国伦敦的地图.点用户点击标记时实现缩放地图的功能(点击标记时绑定地图缩放事件). 代码如下: <html> <head> <script src="http://maps.googleapis.com/maps/api/js?key=AIzaSyDY0kkJiTPVd2U7aTOAwhc9ySH6oHxOIYM&sensor=false"> </script>

基于vue 2.X和高德地图的vue-amap组件获取经纬度

今天我就讲了一下怎么通过vue和高德地图开发的vue-amap组件来获取经纬度. 这是vue-amap的官网文档:https://elemefe.github.io/vue-amap/#/ 这是我的码云项目的地址:http://git.oschina.net/ye_a_rs/project-vue-ele/tree/master/src 用 vue init webpack 项目名称 创建一个项目 npm安装vue-amap组件 : npm install vue-amap --save 在ma

谷歌地图 API 开发之获取坐标以及街道详情

自己的项目中有获取当前点击的坐标经纬度或者获取当前街道的信息的需求.估计这个对于新手来说,还是比较麻烦的,因为从官网上找这个也并不是很好找,要找好久的,运气好的可能会一下子找到. 献上自己写的测试案例.代码如下: <!DOCTYPE html> <html> <head> <title>Simple Map</title> <meta name="viewport" content="initial-scale

JS高德地图应用 ---- 鼠标点击加入标记 &amp; POI搜索

代码如下 (填入Key值) : <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>高德地图</title> <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/> <script type=