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类不提供定制。相反,请参阅 自定义弹出窗口示例, 以了解如何创建完全自定义的弹出窗口。

相关文章
|
26天前
|
缓存 数据可视化 定位技术
快递鸟快递API技术指南:获取物流轨迹信息与轨迹地图的解决方案
在当今电商竞争激烈的环境中,物流体验已成为提升用户满意度的关键因素。研究表明,超过 75% 的消费者会因物流信息不透明而放弃下单。
393 1
|
10月前
|
人工智能 前端开发 API
Gemini Coder:基于 Google Gemini API 的开源 Web 应用生成工具,支持实时编辑和预览
Gemini Coder 是一款基于 Google Gemini API 的 AI 应用生成工具,支持通过文本描述快速生成代码,并提供实时代码编辑和预览功能,简化开发流程。
635 38
Gemini Coder:基于 Google Gemini API 的开源 Web 应用生成工具,支持实时编辑和预览
|
存储 数据库 Android开发
🔥Android Jetpack全解析!拥抱Google官方库,让你的开发之旅更加顺畅无阻!🚀
【7月更文挑战第28天】在Android开发中追求高效稳定的路径?Android Jetpack作为Google官方库集合,是你的理想选择。它包含多个独立又协同工作的库,覆盖UI到安全性等多个领域,旨在减少样板代码,提高开发效率与应用质量。Jetpack核心组件如LiveData、ViewModel、Room等简化了数据绑定、状态保存及数据库操作。引入Jetpack只需在`build.gradle`中添加依赖。例如,使用Room进行数据库操作变得异常简单,从定义实体到实现CRUD操作,一切尽在掌握之中。拥抱Jetpack,提升开发效率,构建高质量应用!
466 4
|
JavaScript 前端开发 定位技术
百度地图JavaScript API v2.0创建地图
百度地图JavaScript API v2.0创建地图
179 0
|
人工智能 自然语言处理 数据挖掘
详解:Google AI Gemini中文版本(基于API 开发实现对话)
谷歌旗下的人工智能应用Gemini,自问世以来凭借其强大的计算能力和高效的处理性能,迅速成为全球用户的宠儿。作为一款由世界顶尖科技公司开发的产品,Gemini不仅在语言处理、图像识别、数据分析等领域表现出色,还在多种复杂任务中展现了其卓越的智能决策能力。然而,由于网络限制等问题,国内用户往往无法直接访问和使用Gemini的网站,这也导致了许多技术爱好者和专业人士未能亲身体验这一先进技术所带来的便利和强大功能。
|
JavaScript 前端开发 定位技术
vue 使用 vue-jsonp 解决跨域请求问题(访问百度地图API)
vue 使用 vue-jsonp 解决跨域请求问题(访问百度地图API)
889 0
|
域名解析 JavaScript 网络协议
技术心得记录:如何使用google地图的api(整理)
技术心得记录:如何使用google地图的api(整理)
1290 0
|
27天前
|
缓存 监控 前端开发
顺企网 API 开发实战:搜索 / 详情接口从 0 到 1 落地(附 Elasticsearch 优化 + 错误速查)
企业API开发常陷参数、缓存、错误处理三大坑?本指南拆解顺企网双接口全流程,涵盖搜索优化、签名验证、限流应对,附可复用代码与错误速查表,助你2小时高效搞定开发,提升响应速度与稳定性。
|
1月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
2月前
|
数据可视化 测试技术 API
从接口性能到稳定性:这些API调试工具,让你的开发过程事半功倍
在软件开发中,接口调试与测试对接口性能、稳定性、准确性及团队协作至关重要。随着开发节奏加快,传统方式已难满足需求,专业API工具成为首选。本文介绍了Apifox、Postman、YApi、SoapUI、JMeter、Swagger等主流工具,对比其功能与适用场景,并推荐Apifox作为集成度高、支持中文、可视化强的一体化解决方案,助力提升API开发与测试效率。

推荐镜像

更多