Passer aux repères avancés
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Depuis le 21 février 2024 (v3.56), google.maps.Marker est obsolète. Nous vous encourageons à passer à la nouvelle classe google.maps.marker.AdvancedMarkerElement
. Les repères avancés offrent d'importantes améliorations par rapport à l'ancienne classe google.maps.Marker
.
En savoir plus sur l'abandon de cette API
Pour transformer un ancien repère en repère avancé :
- Ajoutez le code qui permet d'importer la bibliothèque de repères. Notez que cette exigence ne s'applique pas à la version précédente des repères (
google.maps.Marker
).
- Remplacez
google.maps.Marker
par google.maps.marker.AdvancedMarkerElement
.
- Ajoutez un ID de carte à votre code d'initialisation de la carte Par exemple,
mapId: 'DEMO_MAP_ID'
à des fins de test si vous ne disposez pas encore d'un ID de carte.
Ajouter la bibliothèque de repères avancés
La méthode utilisée pour charger les bibliothèques dépend de la façon dont votre page Web charge l'API Maps JavaScript.
Si votre page Web utilise le chargement de script dynamique, ajoutez la bibliothèque de repères, puis importez AdvancedMarkerElement
(et PinElement
si vous le souhaitez) au moment de l'exécution, comme illustré ici.
const { AdvancedMarkerElement, PinElement } = await google.maps.importLibrary("marker");
Si votre page Web utilise l'ancienne balise de chargement de script en direct, ajoutez libraries=marker
au script de chargement, comme illustré dans l'extrait suivant.
<script
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap&v=weekly&libraries=marker"
defer
></script>
Découvrez comment charger l'API Maps JavaScript.
Exemples
Les exemples suivants montrent le code utilisé pour ajouter un ancien repère, suivi du code pour le même exemple avec des repères avancés :
Avant la migration
// The location of Uluru
const position = { lat: -25.344, lng: 131.031 };
const map = new google.maps.Map(document.getElementById("map"), {
zoom: 4,
center: position,
});
// The marker, positioned at Uluru
const marker = new google.maps.Marker({
map: map,
position: position,
title: 'Uluru',
});
Après la migration
// The location of Uluru
const position = { lat: -25.344, lng: 131.031 };
const map = new google.maps.Map(document.getElementById("map"), {
zoom: 4,
center: position,
mapId: "DEMO_MAP_ID", // Map ID is required for advanced markers.
});
// The advanced marker, positioned at Uluru
const marker = new google.maps.marker.AdvancedMarkerElement({
map,
position: position,
title: 'Uluru',
});
Examiner les fonctionnalités des repères avancés
Vous pouvez personnaliser les repères avancés en profitant de nouvelles options.
Vous pouvez désormais ajuster la taille (échelle) des repères, et modifier la couleur de l'arrière-plan, de la bordure et du glyphe. Les images graphiques personnalisées sont plus simples à utiliser, et vous pouvez désormais créer des repères personnalisés en HTML et CSS. Découvrez tout ce que vous pouvez faire avec des repères avancés :
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/17 (UTC).
[null,null,["Dernière mise à jour le 2025/08/17 (UTC)."],[[["\u003cp\u003e\u003ccode\u003egoogle.maps.Marker\u003c/code\u003e is deprecated as of February 21st, 2024 (v3.56) and developers should transition to \u003ccode\u003egoogle.maps.marker.AdvancedMarkerElement\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eAdvanced markers require adding the marker library, changing the class name, and including a map ID during map initialization.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can customize advanced markers with features like adjustable size, custom colors, graphic images, and HTML/CSS composition.\u003c/p\u003e\n"],["\u003cp\u003eSeveral resources are available to learn more about advanced marker features such as basic customization, graphic markers, HTML/CSS markers, collision behavior, and accessibility.\u003c/p\u003e\n"]]],["Google's `google.maps.Marker` is deprecated as of February 21st, 2024, in favor of `google.maps.marker.AdvancedMarkerElement`. To migrate, import the marker library, replace `google.maps.Marker` with the new class, and add a map ID to map initialization code (e.g., `mapId: 'DEMO_MAP_ID'`). Load the library dynamically with `google.maps.importLibrary(\"marker\")` or add `libraries=marker` to the script tag. Advanced markers offer enhanced customization, including size, color, and HTML/CSS-based designs.\n"],null,["As of February 21st, 2024 (v3.56), google.maps.Marker is deprecated. We\nencourage you to transition to the new `google.maps.marker.AdvancedMarkerElement`\nclass. Advanced markers provide substantial improvements over the legacy\n`google.maps.Marker` class.\n\n[Learn more about this deprecation](/maps/deprecations#googlemapsmarker_in_the_deprecated_as_of_february_2023)\n\nTo update a legacy marker to be an advanced marker, take the following steps:\n\n1. Add code to import the marker library. Note that the previous version of markers (`google.maps.Marker`) does not have this requirement.\n2. Change `google.maps.Marker` to `google.maps.marker.AdvancedMarkerElement`\n3. Add a map ID to your map initialization code. For example `mapId: 'DEMO_MAP_ID'` for testing purposes if you don't have a map ID already.\n\nAdd the Advanced Marker library\n\nThe method you use for loading libraries depends on how your web page loads the\nMaps JavaScript API.\n\n- If your web page uses dynamic script loading, add the markers library and\n import `AdvancedMarkerElement` (and optionally `PinElement`) at runtime, as\n shown here.\n\n ```javascript\n const { AdvancedMarkerElement, PinElement } = await google.maps.importLibrary(\"marker\");\n ```\n- If your web page uses the legacy direct script loading tag, add\n `libraries=marker` to the loading script, as shown in the following snippet.\n\n ```html\n \u003cscript\n src=\"https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap&v=weekly&libraries=marker\"\n defer\n \u003e\u003c/script\u003e\n ```\n\n[Learn more about loading the Maps JavaScript API](/maps/documentation/javascript/load-maps-js-api)\n\nExamples\n\nThe following code examples show code for adding a legacy marker, followed by\nthe code for the same example using advanced markers:\n\nBefore migration \n\n```javascript\n// The location of Uluru\nconst position = { lat: -25.344, lng: 131.031 };\n\nconst map = new google.maps.Map(document.getElementById(\"map\"), {\n zoom: 4,\n center: position,\n});\n\n// The marker, positioned at Uluru\nconst marker = new google.maps.Marker({\n map: map,\n position: position,\n title: 'Uluru',\n});\n```\n\nAfter migration \n\n```javascript\n // The location of Uluru\n const position = { lat: -25.344, lng: 131.031 };\n\n const map = new google.maps.Map(document.getElementById(\"map\"), {\n zoom: 4,\n center: position,\n mapId: \"DEMO_MAP_ID\", // Map ID is required for advanced markers.\n });\n\n // The advanced marker, positioned at Uluru\n const marker = new google.maps.marker.AdvancedMarkerElement({\n map,\n position: position,\n title: 'Uluru',\n });\n```\n\nExplore advanced marker features\n\nAdvanced markers can be customized in ways that were not possible before.\nNow you can adjust the size (scale) of markers, and change the colors of the\nbackground, border, and glyph. Custom graphic images are simpler to work with,\nand it is now possible to compose custom markers using HTML and CSS. Learn more\nabout everything you can do with advanced markers:\n\n- [Basic marker customization](/maps/documentation/javascript/advanced-markers/basic-customization)\n- [Create markers with graphics](/maps/documentation/javascript/advanced-markers/graphic-markers)\n- [Create markers with HTML and CSS](/maps/documentation/javascript/advanced-markers/html-markers)\n- [Control collision behavior, altitude, and visibility](/maps/documentation/javascript/advanced-markers/collision-behavior)\n- [Make markers clickable and accessible](/maps/documentation/javascript/advanced-markers/accessible-markers)"]]