Descripción general de los marcadores
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Selecciona la plataforma:
Android
iOS
JavaScript
Usa marcadores para mostrar ubicaciones individuales en un mapa. En esta guía, se explica cómo usar marcadores avanzados. Con los marcadores avanzados, puedes crear y personalizar marcadores de alto rendimiento, y crear marcadores accesibles que respondan a eventos de clic del DOM y a entradas del teclado. Para una personalización aún más detallada, Marcadores avanzados admite el uso de HTML y CSS personalizados y hasta permite crear marcadores completamente personalizados. En las aplicaciones 3D, puedes controlar la altitud en la que aparece un marcador.
Los marcadores avanzados son compatibles con los mapas de trama y de vectores (aunque algunas funciones no están disponibles en los mapas de trama).
Se requiere un ID de mapa para usar Marcadores avanzados (se puede usar DEMO_MAP_ID
).
Comienza a utilizar Marcadores avanzados
Personaliza el color, la escala y la imagen del ícono
Puedes personalizar el fondo, el glifo y el color del borde predeterminados del marcador, así como ajustar el tamaño.
Reemplaza el ícono de marcador predeterminado con una imagen SVG o PNG personalizada.
Crea marcadores HTML personalizados
Usa HTML y CSS personalizados para crear marcadores interactivos que se destaquen visualmente y animaciones.
Configura los marcadores para que respondan a los eventos de clic y de teclado
Para lograr que un marcador responda a los eventos de clic y teclado, agrega un objeto de escucha de eventos click
.
function initMap() {
const map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 37.4239163, lng: -122.0947209},
zoom: 17,
mapId: 'DEMO_MAP_ID',
});
const marker = new google.maps.marker.AdvancedMarkerElement({
map,
position: {lat: 37.4239163, lng: -122.0947209},
});
marker.addListener('click', ({domEvent, latLng}) => {
const {target} = domEvent;
// Handle the click event.
// ...
});
}
Establece la altitud y el comportamiento de colisión de los marcadores
Establece la altitud del marcador para lograr que se muestre correctamente con los elementos del mapa en 3D y especifica cómo debe comportarse cuando se superponga con otro marcador o etiqueta del mapa. La altitud del marcador solo se admite en los mapas de vectores.
Próximo paso
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-08-17 (UTC)
[null,null,["Última actualización: 2025-08-17 (UTC)"],[[["\u003cp\u003eAdvanced markers offer highly performant and customizable options for displaying single locations on Google Maps, including custom HTML and CSS for unique designs.\u003c/p\u003e\n"],["\u003cp\u003eThey are accessible, responding to DOM click events and keyboard input for enhanced user interaction.\u003c/p\u003e\n"],["\u003cp\u003eCustomization options include changing color, scale, icon image, and creating custom HTML markers with interactive elements and animations.\u003c/p\u003e\n"],["\u003cp\u003eAltitude control is available for 3D applications, enabling precise marker placement in three-dimensional spaces, although this feature is limited to vector maps.\u003c/p\u003e\n"],["\u003cp\u003eAdvanced markers are compatible with both raster and vector maps, requiring a map ID for implementation, and offer improved performance compared to legacy markers.\u003c/p\u003e\n"]]],["Advanced markers allow customization of map markers, including color, scale, and icons (SVG/PNG). Users can employ custom HTML and CSS for unique designs and animations. Markers can be made interactive via `click` event listeners, handling user clicks and keyboard input. Altitude and collision behavior can be defined for 3D maps. A map ID, like `DEMO_MAP_ID`, is needed, and these advanced markers are available on Android, iOS, and JavaScript platforms, supporting both raster and vector maps.\n"],null,["Select platform: [Android](/maps/documentation/android-sdk/advanced-markers/overview \"View this page for the Android platform docs.\") [iOS](/maps/documentation/ios-sdk/advanced-markers/overview \"View this page for the iOS platform docs.\") [JavaScript](/maps/documentation/javascript/advanced-markers/overview \"View this page for the JavaScript platform docs.\")\n\n\u003cbr /\u003e\n\nUse markers to display single locations on a map. This guide shows you how to\nuse advanced markers. With\nadvanced markers you can create and customize highly\nperformant markers, and make accessible markers that respond to DOM click events\nand keyboard input. For even deeper customization,\nadvanced markers supports the use of custom HTML and CSS,\nincluding the ability to create completely custom markers. For 3D applications\nyou can control the altitude at which a marker appears.\nAdvanced markers are supported on both raster and vector maps (though some features are not available on raster maps).\nA map ID is required to use Advanced Markers (the `DEMO_MAP_ID` can be used).\n| **Tip:** If your map uses [legacy markers](/maps/documentation/javascript/markers), consider [migrating to advanced markers](/maps/documentation/javascript/advanced-markers/migration).\n\n[Get started with advanced markers](/maps/documentation/javascript/advanced-markers/start)\n\nCustomize color, scale, and icon image\n\nCustomize the default marker's background, glyph, and border\ncolor, and adjust marker size.\n\nReplace the default marker icon with a custom SVG or PNG image.\n\nCreate custom HTML markers\n\nUse custom HTML and CSS to create visually distinctive\ninteractive markers, and create animations.\n\nMake markers respond to click and keyboard events\n\nMake a marker respond to clicks and keyboard events by adding a\n`click` event listener. \n\n```javascript\nfunction initMap() {\n const map = new google.maps.Map(document.getElementById('map'), {\n center: {lat: 37.4239163, lng: -122.0947209},\n zoom: 17,\n mapId: 'DEMO_MAP_ID',\n });\n\n const marker = new google.maps.marker.AdvancedMarkerElement({\n map,\n position: {lat: 37.4239163, lng: -122.0947209},\n });\n\n marker.addListener('click', ({domEvent, latLng}) =\u003e {\n const {target} = domEvent;\n // Handle the click event.\n // ...\n });\n}\n```\n\nSet marker altitude and collision behavior\n\nSet the altitude for a marker to make it appear correctly with\n3D map elements, and specify how a marker should behave when it collides with\nanother marker or map label. Marker altitude is only supported on vector maps.\n\nNext step\n\n- [Get started with advanced markers](/maps/documentation/javascript/advanced-markers/start)"]]