Google地图官方API-在地图上绘图(弹出信息窗口)

简介:

信息窗口

介绍
显示内容在地图上方的弹出窗口(通常是文本或图像),在给定位置。信息窗口具有内容区域和锥形茎。茎的尖端连接到地图上的指定位置。 InfoWindow

一个InfoWindow,显示有关澳大利亚位置的信息。
通常,您会将信息窗口附加到 标记上,但也可以将信息窗口附加到特定的纬度/经度,如下面有关添加信息窗口的部分所述。

广义上讲,信息窗口是一种叠加层。有关其他类型的叠加层的信息,请参见 在地图上绘制。

提示:如果要在标记上显示单个文本字符,可以使用 标记标签。
提示:查看“ 商店定位器”解决方案 以获取更多使用信息窗口的示例。
添加信息窗口
所述构造函数采用 对象常量,它指定用于显示信息窗口的初始参数。 InfoWindow InfoWindowOptions

该InfoWindowOptions对象常量包含以下字段:

content 包含要在信息窗口中显示的文本字符串或DOM节点。
pixelOffset包含从信息窗口的尖端到信息窗口锚定位置的偏移量。实际上,您无需指定此字段。您可以将其保留为默认值。
position包含LatLng锚定此信息窗口的位置。注意:InfoWindow可以将an 附加到Marker对象(在这种情况下,其位置取决于标记的位置),也可以附加到指定位置的地图本身LatLng。检索a的一种方法LatLng是使用 地理编码服务。在标记上打开信息窗口会自动更新 position。
maxWidth指定信息窗口的最大宽度(以像素为单位)。默认情况下,信息窗口会扩展以适合其内容,如果信息窗口填满了地图,则会自动换行文本。如果添加一个maxWidth信息窗口,则会自动换行以强制执行指定的宽度。如果达到最大宽度并且屏幕上有垂直空间,则信息窗口可能会垂直扩展。
的内容InfoWindow可能包含文本字符串,HTML片段或DOM元素。要设置内容,InfoWindowOptions请setContent()在或在InfoWindow显式调用 上指定它。

如果希望显式调整内容的大小,则可以将其放在

元素中并
使用CSS设置样式。您也可以使用CSS启用滚动。请注意,如果您未启用滚动并且内容超出了信息窗口中的可用空间,则内容可能会溢出信息窗口。

最佳做法:为了获得最佳的用户体验,任何时候都只能在地图上打开一个信息窗口。多个信息窗口使地图显得混乱。如果一次只需要一个信息窗口,则可以仅创建一个InfoWindow对象,并在地图事件(例如用户单击)时在不同的位置或标记处打开它。如果确实需要多个信息窗口,则可以同时显示多个 InfoWindow对象。
打开信息窗口
创建信息窗口时,它不会自动显示在地图上。要使信息窗口可见,您需要在上调用open() 方法InfoWindow,将其传递Map给要打开的方法,还可以选择将Marker其作为锚定的方法。如果未提供标记,则信息窗口将在其position属性中打开 。

// This example displays a marker at the center of Australia.
// When the user clicks the marker, an info window opens.

function initMap() {
var uluru = {lat: -25.363, lng: 131.044};
var map = new google.maps.Map(document.getElementById('map'), {

zoom: 4,
center: uluru

});

var contentString = '

'+
  '<div id="siteNotice">'+
  '</div>'+
  '<h1 id="firstHeading" class="firstHeading">Uluru</h1>'+
  '<div id="bodyContent">'+
  '<p><b>Uluru</b>, also referred to as <b>Ayers Rock</b>, is a large ' +
  'sandstone rock formation in the southern part of the '+
  'Northern Territory, central Australia. It lies 335&#160;km (208&#160;mi) '+
  'south west of the nearest large town, Alice Springs; 450&#160;km '+
  '(280&#160;mi) by road. Kata Tjuta and Uluru are the two major '+
  'features of the Uluru - Kata Tjuta National Park. Uluru is '+
  'sacred to the Pitjantjatjara and Yankunytjatjara, the '+
  'Aboriginal people of the area. It has many springs, waterholes, '+
  'rock caves and ancient paintings. Uluru is listed as a World '+
  'Heritage Site.</p>'+
  '<p>Attribution: Uluru, <a href="https://en.wikipedia.org/w/index.php?title=Uluru&oldid=297882194">'+
  'https://en.wikipedia.org/w/index.php?title=Uluru</a> '+
  '(last visited June 22, 2009).</p>'+
  '</div>'+
  '</div>';

var infowindow = new google.maps.InfoWindow({

content: contentString

});

var marker = new google.maps.Marker({

position: uluru,
map: map,
title: 'Uluru (Ayers Rock)'

});
marker.addListener('click', function() {

infowindow.open(map, marker);

});
}

查看示例。

以下示例设置maxWidth信息窗口的: view example。

关闭信息窗口
默认情况下,InfoWindow在用户单击关闭控件(信息窗口右上角的叉号)之前,该控件保持打开状态。如果愿意,可以通过调用其close()方法显式关闭信息窗口。

移动信息窗口
有两种方法可以更改信息窗口的位置:

致电setPosition()信息窗口,或
使用InfoWindow.open()方法将信息窗口附加到新标记 。注意:如果调用时open() 未传递标记,则InfoWindow它将使用通过InfoWindowOptions对象文字构造时指定的位置 。
客制化
本InfoWindow类不提供定制。相反,请参阅 自定义弹出窗口示例, 以了解如何创建完全自定义的弹出窗口。

相关文章
|
3月前
|
安全 搜索推荐 PHP
信息收集的利器,Google骇客语法
信息收集的利器,Google骇客语法
76 2
|
4月前
|
人工智能 Serverless API
AI 创业及变现新思路:零门槛 AI 绘图,定制 ComfyUI Serverless API 应用
为了帮助用户高效率、低成本应对企业级复杂场景,本文介绍 ComfyUI API Serverless 版解决方案,通过使用该方案,用户可以充分利用 ComfyUI +Serverless 技术优势快速开发上线 AI 绘画应用,期待为广大开发者 AI 绘画创业及变现提供思路。
|
5月前
|
存储 数据库 Android开发
🔥Android Jetpack全解析!拥抱Google官方库,让你的开发之旅更加顺畅无阻!🚀
【7月更文挑战第28天】在Android开发中追求高效稳定的路径?Android Jetpack作为Google官方库集合,是你的理想选择。它包含多个独立又协同工作的库,覆盖UI到安全性等多个领域,旨在减少样板代码,提高开发效率与应用质量。Jetpack核心组件如LiveData、ViewModel、Room等简化了数据绑定、状态保存及数据库操作。引入Jetpack只需在`build.gradle`中添加依赖。例如,使用Room进行数据库操作变得异常简单,从定义实体到实现CRUD操作,一切尽在掌握之中。拥抱Jetpack,提升开发效率,构建高质量应用!
84 4
|
4月前
|
JavaScript 前端开发 定位技术
百度地图JavaScript API v2.0创建地图
百度地图JavaScript API v2.0创建地图
78 0
|
5月前
|
JavaScript 前端开发 定位技术
vue 使用 vue-jsonp 解决跨域请求问题(访问百度地图API)
vue 使用 vue-jsonp 解决跨域请求问题(访问百度地图API)
284 0
|
6月前
|
域名解析 JavaScript 网络协议
技术心得记录:如何使用google地图的api(整理)
技术心得记录:如何使用google地图的api(整理)
481 0
|
7月前
|
定位技术 API
Angular 调用导入百度地图API接口,2024春招BAT面试真题详解
Angular 调用导入百度地图API接口,2024春招BAT面试真题详解
Qt 窗口常用位置API函数 & 绘图原理 & 双缓冲机制 总结
Qt 窗口常用位置API函数 & 绘图原理 & 双缓冲机制 总结
|
7月前
|
JSON Android开发 数据格式
Android框架-Google官方Gson解析,android开发实验报告总结
Android框架-Google官方Gson解析,android开发实验报告总结
|
XML Java API
[Google API](1)简介
简 介     Google 搜索引擎现在可以通过基于 SOAP 的 Web 服务来访问了。这意味着,开发人员现在可以在他们自己的应用程序中嵌入 Google 搜索结果和其它信息。
1129 0
下一篇
DataWorks