通过JS在Google地图中显示访问者位置

时间:2014-04-25 20:24:44

标签: javascript google-maps

所以,我有一个JavaScript代码,显示地图和我的位置。它还有一些额外的设置应用于它。我的问题是,查看以下JS代码,并在此处使用GoogleMaps API:http://maps.googleapis.com/maps/api/js?sensor=false,有没有办法在此地图上显示访问者位置?

我正在尝试构建一个虚拟站点视图GeoLocator。这显示了我所有网站观看者的位置。或者,也许在线有一个插件。

var map;
function initialize() {
    var options =
{
    zoom: 2,
    center: new google.maps.LatLng(geoip_latitude(), geoip_longitude()),
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    mapTypeControl: true,
    mapTypeControlOptions:
    {
        style: google.maps.MapTypeControlStyle.DROPDOWN_MENU,
        poistion: google.maps.ControlPosition.TOP_RIGHT,
        mapTypeIds: [google.maps.MapTypeId.ROADMAP,
          google.maps.MapTypeId.TERRAIN,
          google.maps.MapTypeId.HYBRID,
          google.maps.MapTypeId.SATELLITE]
    },
    navigationControl: true,
    navigationControlOptions:
    {
        style: google.maps.NavigationControlStyle.ZOOM_PAN
    },
    scaleControl: true,
    disableDoubleClickZoom: true,
    draggable: true,
    streetViewControl: true,
    draggableCursor: 'move'
};
            map = new google.maps.Map(document.getElementById("map"), options);
            // Add Marker and Listener
            var latlng = new google.maps.LatLng(geoip_latitude(), geoip_longitude());
            var marker = new google.maps.Marker
(
    {
        position: latlng,
        map: map,
        title: 'Click me'
    }
);
var infowindow = new google.maps.InfoWindow({
    content: 'You Are Here'
});
google.maps.event.addListener(marker, 'click', function () {
    // Calling the open method of the infoWindow 
    infowindow.open(map, marker);
});
}

1 个答案:

答案 0 :(得分:0)

嗯,这是可能的......你需要一台服务器来发送这些信息(你必须在观众访问的页面上设置),这将找到他们的IP并查找他们的长/ lat IP数据库,如果知道该IP(该信息并非总是存在且不一定准确,如果是)。然后你需要有一个接口,从这个数据库中获取long / lat值,并在地图上用标记显示它们,正如我在评论中所描述的那样。

当然,您也可以使用Google Analytics(google.com/analytics)来完成所有这些工作。 :)