谷歌在没有地图的情况下放置图书馆

2024-01-09

我正在尝试使用谷歌地点库来执行附近的搜索请求:https://developers.google.com/maps/documentation/javascript/places#place_search_requests https://developers.google.com/maps/documentation/javascript/places#place_search_requests

我只想拉取 json 响应并将其放入 html 列表中,我现在想在地图或其他东西上显示结果。我根本不想使用地图。但在文档中它指出必须有一张地图

service = new google.maps.places.PlacesService(**map**);

以便将其作为 PlacesService 函数中的参数传递。我现在所做的是添加高度为0的地图,但它仍然消耗大量内存(我开发了一个sencha touch 2应用程序,内存很重要)。是否有任何解决方法可以在没有地图的情况下使用附近的搜索请求?我不想使用 Google Places API,因为它不支持 JSONP 请求。


根据记录,PlacesService 接受地图或地图作为参数渲染结果属性的节点.

所以你只需要使用节点(节点是一个 html 元素)而不是地图。

请注意:隐藏属性违反了地点政策(当用作参数时也会隐藏地图,因为地图会显示属性)

您可能也对此感兴趣:Google 放置的 API 是否违反了 TOC? https://stackoverflow.com/questions/14313215/google-places-api-does-this-violate-the-toc/14322983#14322983


示例:简而言之

如果您使用的是 jQuery:

var service = new google.maps.places.PlacesService($('#tag-id').get(0));

如果是普通的 JavaScript:

var service = new google.maps.places.PlacesService(document.createElement('div'));

然后像往常一样继续与示例代码的其余部分 https://developers.google.com/maps/documentation/javascript/places#place_search_requests:

  service.nearbySearch(request, callback);

示例:使用返回的详细信息

此示例在 jsFiddle 上的现场演示 https://jsfiddle.net/AdrienBe/Lz6sspzd/.

注:本例使用jQuery.

<ul class="reviews__content" id="reviews__content">
</ul>
<div id="service-helper"></div>

<script async defer
src="https://maps.googleapis.com/maps/api/js?key=GOOGLE_API_KEY_HERE&libraries=places&callback=getRelevantGoogleReviews">
</script>
<script type="text/javascript">
   window.getRelevantGoogleReviews = function(){
     var service = new google.maps.places.PlacesService($('#service-helper').get(0)); // note that it removes the content inside div with tag '#service-helper'

     service.getDetails({
         placeId: 'ChIJAwEf5VFQqEcRollj8j_kqnE'  // get a placeId using https://developers.google.com/places/web-service/place-id
        }, function(place, status) {
            if (status === google.maps.places.PlacesServiceStatus.OK) {
              var resultcontent = '';
              for (i=0; i<place.reviews.length; ++i) {
                //window.alert('Name:' + place.name + '. ID: ' + place.place_id + '. address: ' + place.formatted_address);
                resultcontent += '<li class="reviews__item">'
                resultcontent += '<div class="reviews__review-er">' + place.reviews[i].author_name + '</div>';
                var reviewDate = new Date(place.reviews[i].time * 1000);
                var reviewDateMM = reviewDate.getMonth() + 1;
                var reviewDateFormatted = reviewDate.getDate() + '/' + reviewDateMM + '/' + reviewDate.getFullYear(); 
                resultcontent += '<div class="reviews__review-date">' + reviewDateFormatted + '</div>';
                resultcontent += '<div class="reviews__review-rating reviews__review-rating--' + place.reviews[i].rating +'"></div>';
                if (!!place.reviews[i].text){
                  resultcontent += '<div class="reviews__review-comment">' + place.reviews[i].text + '</div>';
                }
                resultcontent += '</li>'
              }
              $('#reviews__content').append(resultcontent);
            }
        });
    }
</script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

谷歌在没有地图的情况下放置图书馆 的相关文章

  • 使用渐变填充而不是普通颜色创建标记 - Google 地图

    我正在尝试使用 Google 地图获得一个点状标记google maps SymbolPath CIRCLE 我在其中取得了成功 var dotMarkerImage path google maps SymbolPath CIRCLE f
  • Android Google 地图无法在当前主题中找到样式“mapViewStyle”

    添加谷歌地图视图时 我扩展了MapView 使用xml编辑器将其添加到活动中 并将我的谷歌地图api密钥手动添加到布局xml文件中 我的权限在清单文件中允许互联网 我想知道的是 在 xml 编辑器中 我收到错误 无法在当前主题中找到样式 m
  • SimpleXML 返回空数组

    我正在尝试使用 Google Maps API 和 PHP SimpleXML 获取城市的纬度和经度 我尝试这样做 xml simplexml load file http maps googleapis com maps api geoc
  • Android 谷歌地图多边形点击事件[重复]

    这个问题在这里已经有答案了 我正在 Android 上开发地图应用程序 并且正在使用 Google Maps Android API V2 我从 Web 服务获取多边形数据 通过 XML 解析对其进行转换 然后可以毫无问题地将其显示在地图上
  • 查找地图 API 密钥的所有者

    我一直在开发一个已实现 Google 地图 API 密钥的网站 但我需要知道 API 密钥的所有者是谁 有什么办法可以查到吗 任何帮助表示赞赏 Thanks 密钥的所有者是受 Google 保护的私人信息 最终用户无法找到密钥的所有者 如果
  • Python / Google Maps API - TimeoutError: [Errno 60] 从终端调用函数时操作超时

    我正在从终端调用一个函数 该函数连接到 Google 地图 API 以返回某个地点的坐标 但是 我收到这个错误 sock connect self host self port TimeoutError Errno 60 Operation
  • 在 GeoJson 数据接收到的 Google 地图多边形上放置标签

    我想将带有信息的标签 或带有标签的 div 放在由下面的代码片段绘制的多边形上 样式属性已成功应用于要素 多边形类型 有谁知道如何向该特征添加文本并将其显示在多边形的中心 function handleGeoJson data map da
  • Android 在谷歌地图上绘制带箭头的折线和方向路径

    I have added polylines but not able to add arrow with direction on google map should be display as below And when it zoo
  • Google 地图信息窗口根据内部内容调整大小

    我正在使用此方法创建自定义信息窗口 UIView mapView GMSMapView mapView markerInfoWindow GMSMarker marker基于UIStoryboard使用自动布局 我预计一些内部视图将被调整大
  • 如何在pyqt5中创建小部件来显示谷歌地图

    如何从用户那里获取纬度和经度并在 pyqt5 小部件的地图上显示该位置 我的操作系统是Windows 我找到了这个链接 https github com eyllanesc qMap https github com eyllanesc q
  • Font Awesome 图标作为 Google Maps API V3 中的标记

    我想使用一个很棒的字体图标作为 Google 地图标记 这是我的代码 function addMarker marker marker1 new google maps Marker position new google maps Lat
  • 根据城市名称谷歌地图获取坐标

    我正在尝试使用谷歌地图创建基于城市的坐标 这是我现在拥有的示例 我总是收到错误 var address Zurich Ch var geocoder new google maps Geocoder geocoder geocode add
  • 如何在react-google-maps中添加标记?

    在中使用 React JS流星1 5 https www meteor com Question 需要一种添加方式Marker using 反应谷歌地图 https github com tomchentw react google map
  • 谷歌地图 API 的替代品 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案
  • 如何在通过鼠标拖动选择的区域内获取标记?

    In Brief我想找到位于通过在地图上拖动鼠标创建的矩形区域内的所有标记 任何 jQuery 插件或其他插件是否支持此功能 如果没有 我想在我的项目中实现这一点 我想这会很酷 Details我正在使用 Google 地图 v2 因为我想在
  • 存储与地点详细信息一起返回的照片参考

    我可以存储通过地点详细信息 API 返回的照片引用 最多返回 10 个 以便稍后可以直接使用它们通过地点照片 API 调用来获取照片吗 ToS 规定我们无法存储任何内容 正如你所说 ToS https cloud google com ma
  • 如何在android中的地图上显示当前位置标记?

    我正在开发一个应用程序 我想在地图中使用标记显示当前位置 我正在使用谷歌地图 v2 在这里 当 GPS 关闭时 我可以显示地图和标记 但当 GPS 打开时 地图上看不到任何标记 我的要求是在地图上显示当前位置的标记 我尝试这样 Overri
  • 从当前位置出发的移动网络行车路线

    我正在构建一个网站的移动版本 试图通过一键式链接来启动 Google 地图 并提供从用户当前位置到企业的行车路线 我让它在 iPhone 上运行良好 但在 Android 上测试时 它会查看 Current 20Location 并尝试查找
  • 缩放事件侦听器之前的 Javascript OpenLayers

    我正在尝试将 OpenLayers 设置为在缩放开始之前不显示矢量图层 并使其在缩放结束后重新出现 我已经像这样建立了缩放结束部分 map new OpenLayers Map map element eventListeners zoom
  • Google Maps API (v3) 添加/更新标记

    编辑 它现在可以工作 但如果用户不允许或没有基于位置的服务 则不会加载 请参阅 jsfiddle 示例接受的答案评论 我已经浏览了一些教程和问题 但我无法安静地理解正在发生的事情 或者在这种情况下 没有发生 当用户单击链接时 我正在加载地图

随机推荐