HTML, CSS ve JavaScript kodu kullanarak bir web sayfasına Google Haritası ekleyebilirsiniz.
Bu sayfada, bir web sayfasına iki şekilde harita ekleme yöntemi gösterilmektedir: gmp-map özel HTML öğesini kullanarak ve div öğesini kullanarak.
Genel Bakış
Harita yüklemek için web sayfanızın aşağıdakileri yapması gerekir:
- Bootstrap yükleyici kullanarak Maps JavaScript API'yi yükleyin. API anahtarınızın iletildiği yerdir ve HTML veya JavaScript kaynak dosyalarına eklenebilir.
- Haritayı HTML sayfasına ekleyin ve gerekli CSS stillerini ekleyin.
mapskitaplığını yükleyin ve haritayı başlatın.
gmp-map öğesini kullanarak harita ekleme
gmp-map öğesi, web bileşenleri kullanılarak oluşturulan özel bir HTML öğesidir.
gmp-map öğesini kullanarak bir web sayfasına harita eklemek için aşağıdaki adımları uygulayın.
HTML sayfasına, API anahtarınızla ve diğer seçeneklerle yapılandırılmış önyüklemeyi içeren bir
scriptöğesi ekleyin.<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=maps,marker" defer ></script>
HTML sayfasına bir
gmp-mapöğesi ekleyin.centeriçin enlem ve boylam koordinatlarını,zoomiçin ise yakınlaştırma değerini belirtin. Bu örnekteheightstil özelliği de belirtilmiştir.<gmp-map center="37.4220656,-122.0840897" zoom="10" map-id="DEMO_MAP_ID" style="height: 400px" ></gmp-map>
Eksiksiz örnek kod
<html>
<head>
<title>Add a Map using HTML</title>
<link rel="stylesheet" type="text/css" href="./style.css" />
<script type="module" src="./index.js"></script>
</head>
<body>
<gmp-map
center="37.4220656,-122.0840897"
zoom="10"
map-id="DEMO_MAP_ID"
style="height: 400px"
></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=AIzaSyA6myHzS10YXdcazAFalmXvDkrYCp5cLc8&libraries=maps,marker&v=weekly"
defer
></script>
</body>
</html>div öğesi ve JavaScript kullanarak harita ekleme
div öğesini kullanarak bir web sayfasına harita eklemek için aşağıdaki adımları uygulayın.
HTML sayfasına, API anahtarınız ve diğer seçeneklerle yapılandırılmış önyükleme yükleyicisini içeren bir
scriptöğesi ekleyin. Alternatif olarak, bootstrap yükleyici kodunu doğrudan bir TypeScript veya JavaScript dosyasına ekleyin (scriptetiketleri hariç).<script> (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ key: "YOUR_API_KEY", v: "weekly", // Use the 'v' parameter to indicate the version to use (weekly, beta, alpha, etc.). // Add other bootstrap parameters as needed, using camel case. }); </script>
HTML sayfasına, haritayı içerecek bir
divöğesi ekleyin.<div id="map"></div>
CSS'de harita yüksekliğini %100 olarak ayarlayın.
#map { height: 100%; }
JavaScript dosyasında,
mapskitaplığını yüklemek ve haritayı başlatmak için bir işlev oluşturun.centeriçin enlem ve boylam koordinatlarını,zoomiçin kullanılacak yakınlaştırma düzeyini belirtin.let map; async function initMap() { const { Map } = await google.maps.importLibrary("maps"); map = new Map(document.getElementById("map"), { center: { lat: -34.397, lng: 150.644 }, zoom: 8, }); } initMap();
Eksiksiz örnek kod
TypeScript
let map: google.maps.Map; async function initMap(): Promise<void> { const { Map } = await google.maps.importLibrary("maps") as google.maps.MapsLibrary; map = new Map(document.getElementById("map") as HTMLElement, { center: { lat: -34.397, lng: 150.644 }, zoom: 8, }); } initMap();
JavaScript
let map; async function initMap() { const { Map } = await google.maps.importLibrary("maps"); map = new Map(document.getElementById("map"), { center: { lat: -34.397, lng: 150.644 }, zoom: 8, }); } initMap();
CSS
/* * Always set the map height explicitly to define the size of the div element * that contains the map. */ #map { height: 100%; } /* * Optional: Makes the sample page fill the window. */ html, body { height: 100%; margin: 0; padding: 0; }
HTML
<html>
<head>
<title>Simple Map</title>
<link rel="stylesheet" type="text/css" href="./style.css" />
<script type="module" src="./index.js"></script>
</head>
<body>
<div id="map"></div>
<!-- prettier-ignore -->
<script>(g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})
({key: "AIzaSyA6myHzS10YXdcazAFalmXvDkrYCp5cLc8", v: "weekly"});</script>
</body>
</html>