Wprowadzenie
Z tego samouczka dowiesz się, jak dodać do strony internetowej mapę Google ze znacznikiem za pomocą niestandardowych elementów HTML. Oto mapa, którą utworzysz, korzystając z tego samouczka. Dwa markery są umieszczone w Mountain View w Kalifornii i w Seattle w stanie Waszyngton.
Rozpocznij
Oto czynności, które wykonamy, aby utworzyć mapę Google ze znacznikiem za pomocą kodu HTML:
Potrzebujesz przeglądarki. Wybierz znaną przeglądarkę, np. Google Chrome (zalecana), Firefox, Safari lub Edge, w zależności od platformy z listy obsługiwanych przeglądarek.
Krok 1. Uzyskaj klucz interfejsu API
W tej sekcji dowiesz się, jak uwierzytelnić aplikację w interfejsie Maps JavaScript API za pomocą własnego klucza interfejsu API.
Aby uzyskać klucz interfejsu API:
Otwórz konsolę Google Cloud.
Utwórz lub wybierz projekt.
Kliknij Dalej, aby włączyć interfejs API i powiązane z nim usługi.
Na stronie Dane logowania uzyskaj klucz interfejsu API (i ustaw ograniczenia klucza interfejsu API). Uwaga: jeśli masz już klucz interfejsu API bez ograniczeń lub klucz z ograniczeniami dotyczącymi przeglądarki, możesz go użyć.
Aby zapobiec kradzieży limitu i zabezpieczyć klucz interfejsu API, zapoznaj się z artykułem Korzystanie z kluczy interfejsu API.
Włącz płatności. Więcej informacji znajdziesz w artykule Wykorzystanie i rozliczenia.
Możesz już używać klucza interfejsu API.
Krok 2. Utwórz pliki HTML, CSS i JS
Oto kod podstawowej strony internetowej HTML:
<html> <head> <title>Add a Map with Markers using HTML</title> <!-- TODO: Add bootstrap script tag. --> </head> <body> <!-- TODO: Add a map with markers. --> </body> </html>
Aby wczytać mapę, musisz dodać tag script
zawierający program wczytujący interfejsu Maps JavaScript API, jak pokazano w tym fragmencie kodu (dodaj własny klucz interfejsu API):
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=maps,marker" defer ></script>
Spoiler: wypróbuj gotowy przykład w JSFiddle.
Krok 3. Dodaj mapę
Aby dodać do strony mapę Google, skopiuj element HTML gmp-map
i wklej go w sekcji body
strony HTML:
<gmp-map center="37.4220656,-122.0840897" zoom="10" map-id="DEMO_MAP_ID" style="height: 400px"></gmp-map>
W rezultacie otrzymasz taką mapę:
Utworzona mapa jest wyśrodkowana na obszar metropolitalny San Jose.
Krok 4. Dodaj marker
Aby dodać znacznik do mapy, użyj elementu HTML gmp-advanced-marker
.
Skopiuj ten fragment i wklej go w miejsce całego kodu gmp-map
dodanego w poprzednim kroku.
<gmp-map center="43.4142989,-124.2301242" zoom="4" map-id="DEMO_MAP_ID" style="height: 400px" > <gmp-advanced-marker position="37.4220656,-122.0840897" title="Mountain View, CA" ></gmp-advanced-marker> <gmp-advanced-marker position="47.648994,-122.3503845" title="Seattle, WA" ></gmp-advanced-marker> </gmp-map>
Powyższy kod dodaje 2 markery i zmienia parametry zoom
i center
w gmp-map
, aby lepiej je wyświetlać. Aby używać zaawansowanych znaczników, musisz mieć identyfikator mapy (możesz użyć DEMO_MAP_ID
).
Wskazówki i rozwiązywanie problemów
- Możesz dostosować mapę za pomocą niestandardowych stylów.
- Użyj konsoli Narzędzi dla programistów w przeglądarce, aby testować i uruchamiać kod, odczytywać raporty o błędach i rozwiązywać problemy z kodem.
- Aby otworzyć konsolę w Chrome, użyj tych skrótów klawiszowych:
Command+Option+J (na Macu) lub Ctrl+Shift+J (w systemie Windows). Aby uzyskać współrzędne geograficzne (szerokość i długość) lokalizacji w Mapach Google, wykonaj te czynności:
- Otwórz Mapy Google w przeglądarce.
- Kliknij prawym przyciskiem myszy dokładną lokalizację na mapie, dla której chcesz uzyskać współrzędne.
- W wyświetlonym menu kontekstowym wybierz Co tu jest. U dołu ekranu wyświetli się karta. W ostatnim wierszu karty znajdź współrzędne szerokości i długości geograficznej.
Za pomocą usługi geokodowania możesz przekonwertować adres na współrzędne geograficzne. Szczegółowe informacje o rozpoczynaniu korzystania z usługi Geocoding znajdziesz w przewodnikach dla deweloperów.
Pełny przykładowy kod
Poniżej znajdziesz ostateczną mapę i pełny kod przykładowy, który został użyty w tym samouczku.
<html> <head> <title>Add a Map with Markers using HTML</title> <link rel="stylesheet" type="text/css" href="./style.css" /> <script type="module" src="./index.js"></script> </head> <body> <gmp-map center="43.4142989,-124.2301242" zoom="4" map-id="DEMO_MAP_ID" style="height: 400px" > <gmp-advanced-marker position="37.4220656,-122.0840897" title="Mountain View, CA" ></gmp-advanced-marker> <gmp-advanced-marker position="47.648994,-122.3503845" title="Seattle, WA" ></gmp-advanced-marker> </gmp-map> <!-- The `defer` attribute causes the script to execute after the full HTML document has been parsed. For non-blocking uses, avoiding race conditions, and consistent behavior across browsers, consider loading using Promises. See https://developers.google.com/maps/documentation/javascript/load-maps-js-api for more information. --> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&libraries=maps,marker&v=beta" defer ></script> </body> </html>