Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google maps Google Places API-添加地点详细信息_Google Maps_Google Maps Api 3_Google Places Api - Fatal编程技术网

Google maps Google Places API-添加地点详细信息

Google maps Google Places API-添加地点详细信息,google-maps,google-maps-api-3,google-places-api,Google Maps,Google Maps Api 3,Google Places Api,我有以下代码: function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(start,showError); } else{

我有以下代码:

     function getLocation()
                {
                if (navigator.geolocation)
                  {
                  navigator.geolocation.getCurrentPosition(start,showError);

                  }
                else{
                error('Geo Location is not supported');
                }
                }

 function start(position) {

                var mySearch = document.getElementById("search").value;           
               var latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);

                map = new google.maps.Map(document.getElementById('map'), {
                  mapTypeId: google.maps.MapTypeId.ROADMAP,
                  center: latlng,
                  zoom: 12
                });

                var request = {
                  location: latlng,
                  radius: 500,
                  query: mySearch
                };

                 infowindow = new google.maps.InfoWindow();
                 service = new google.maps.places.PlacesService(map);
                 service.textSearch(request, callback);
                }

                function callback(results, status) {

                  if (status == google.maps.places.PlacesServiceStatus.OK) {
                    for (var i = 0; i < results.length; i++) {
                      var place = results[i];
                      createMarker(results[i]);

                    }
                  }
                }


              function createMarker(place) {

                var placeLoc = place.geometry.location;
                var marker = new google.maps.Marker({
                  map: map,
                  position: place.geometry.location,


                });

                google.maps.event.addListener(marker, 'click', function() {
                  infowindow.setContent(place.name, place.website);
                  infowindow.open(map, this);
                });
              } 
函数getLocation() { if(导航器.地理位置) { navigator.geolocation.getCurrentPosition(开始、结束); } 否则{ 错误(“不支持地理位置”); } } 功能启动(位置){ var mySearch=document.getElementById(“搜索”).value; var latlng=新的google.maps.latlng(position.coords.latitude,position.coords.longitude); map=new google.maps.map(document.getElementById('map'){ mapTypeId:google.maps.mapTypeId.ROADMAP, 中心:拉特林, 缩放:12 }); var请求={ 地点:拉丁美洲, 半径:500, 查询:mySearch }; infowindow=new google.maps.infowindow(); 服务=新的google.maps.places.PlacesService(地图); 文本搜索(请求、回调); } 函数回调(结果、状态){ if(status==google.maps.places.PlacesServiceStatus.OK){ 对于(var i=0;i 代码运行良好,但我正在尝试检索有关某个地方的更多详细信息。我知道的地方详情:我只是不知道在哪里和如何调整我的代码,说添加在地方网站。我正在努力找出从哪里获得参考资料,然后如何使用它。如果有人能在我的代码中编写,那就太好了。

调整了“createMarker”函数(未测试):

函数createMarker(位置){
var placeLoc=place.geometry.location;
if(place.icon){
var image=new google.maps.MarkerImage(
place.icon,新的google.maps.Size(71,71),
新的google.maps.Point(0,0),新的google.maps.Point(17,34),
新google.maps.Size(25,25));
}else-var-image=null;
var marker=new google.maps.marker({
地图:地图,
图标:图像,
位置:place.geometry.location
});
var请求={
参考:place.reference
};
google.maps.event.addListener(标记,'click',函数(){
service.getDetails(请求、功能(位置、状态){
if(status==google.maps.places.PlacesServiceStatus.OK){
var contentStr=''+place.name+''+place.formatted\u地址;
如果(!!place.formatted_phone_number)contentStr+='
'+place.formatted_phone_number; 如果(!!place.website)contentStr+='
'; contentStr+='
'+place.types+'

'; infowindow.setContent(contentStr); 信息窗口。打开(地图、标记); }否则{ var contentStr=“无结果,状态=“+status+”; infowindow.setContent(contentStr); 信息窗口。打开(地图、标记); } }); }); }
调整“createMarker”功能(未测试):

函数createMarker(位置){
var placeLoc=place.geometry.location;
if(place.icon){
var image=new google.maps.MarkerImage(
place.icon,新的google.maps.Size(71,71),
新的google.maps.Point(0,0),新的google.maps.Point(17,34),
新google.maps.Size(25,25));
}else-var-image=null;
var marker=new google.maps.marker({
地图:地图,
图标:图像,
位置:place.geometry.location
});
var请求={
参考:place.reference
};
google.maps.event.addListener(标记,'click',函数(){
service.getDetails(请求、功能(位置、状态){
if(status==google.maps.places.PlacesServiceStatus.OK){
var contentStr=''+place.name+''+place.formatted\u地址;
如果(!!place.formatted_phone_number)contentStr+='
'+place.formatted_phone_number; 如果(!!place.website)contentStr+='
'; contentStr+='
'+place.types+'

'; infowindow.setContent(contentStr); 信息窗口。打开(地图、标记); }否则{ var contentStr=“无结果,状态=“+status+”; infowindow.setContent(contentStr); 信息窗口。打开(地图、标记); } }); }); }

在Hiya中描述,谢谢,这真的很有帮助。还有一件事,我正在使用地理定位找到我的位置,我希望我的位置也被绘制在地图上。你知道怎么做吗?我更新了我的代码以显示地理位置我不使用地理位置,我在访问的任何页面上都拒绝使用它。这是一个完全不同的问题。这仍然是一个完全独立的问题,应该在StackOverflow上提交。你好,谢谢,这真的很有帮助。还有一件事,我正在使用地理定位找到我的位置,我希望我的位置也被绘制在地图上。你知道怎么做吗?我更新了我的代码以显示地理位置我不使用地理位置,我在访问的任何页面上都拒绝使用它。这是一个完全不同的问题,它仍然是一个完全独立的问题,应该在会议上提交。
function createMarker(place) {
    var placeLoc = place.geometry.location;
    if (place.icon) {
      var image = new google.maps.MarkerImage(
            place.icon, new google.maps.Size(71, 71),
            new google.maps.Point(0, 0), new google.maps.Point(17, 34),
            new google.maps.Size(25, 25));
    } else var image = null;

    var marker = new google.maps.Marker({
      map: map,
      icon: image,
      position: place.geometry.location
    });
    var request =  {
      reference: place.reference
    };

    google.maps.event.addListener(marker,'click',function(){
        service.getDetails(request, function(place, status) {
          if (status == google.maps.places.PlacesServiceStatus.OK) {
            var contentStr = '<h5>'+place.name+'</h5><p>'+place.formatted_address;
            if (!!place.formatted_phone_number) contentStr += '<br>'+place.formatted_phone_number;
            if (!!place.website) contentStr += '<br><a target="_blank" href="'+place.website+'">'+place.website+'</a>';
            contentStr += '<br>'+place.types+'</p>';
            infowindow.setContent(contentStr);
            infowindow.open(map,marker);
          } else { 
            var contentStr = "<h5>No Result, status="+status+"</h5>";
            infowindow.setContent(contentStr);
            infowindow.open(map,marker);
          }
        });
    });
}