Markører (Norsk)
Innledning
En markør identifiserer en plassering på et kart. Som standard bruker en markør et standardbilde. Markører kan vise tilpassede bilder, i så fall blir de vanligvis referert til som «ikoner». Markører og ikoner er objekter av typen Marker
. Du kan angi et egendefinert ikon i markørens konstruktør, eller ved å ringe setIcon()
på markøren. Se mer om å tilpasse markørbildet nedenfor.
Generelt , markører er en type overlegg. For informasjon om andre typer overlegg, se Tegning på kartet.
Markører er designet for å være interaktive. For eksempel mottar de for eksempel "click"
hendelser, slik at du kan legge til en hendelseslytter for å få opp et informasjonsvindu som viser tilpasset informasjon. Du kan tillate brukere å flytte en markør på kartet ved å sette markøren «s draggable
eiendom til true
. For mer informasjon om drabare markører, se nedenfor.
Legg til en markør
google.maps.Marker
-konstruktøren tar en enkelt Marker options
objekt bokstavelig, og angir markørens innledende egenskaper.
Følgende felt er spesielt viktige og settes ofte når du konstruerer en markør:
-
position
(obligatorisk) angir enLatLng
som identifiserer startallokering av markøren. En måte å hente enLatLng
på er ved å bruke Geocoding-tjenesten. -
map
(valgfritt) angirMap
som markøren skal plasseres på. Hvis du ikke spesifiserer kartet på konstruksjonen av markøren, blir markøren opprettet, men ikke festet til (eller vises på) kartet. Du kan legge til markøren senere ved å ringe markøren «ssetMap()
metode.
Følgende eksempel legger til en enkel markør på et kart ved Uluru, i sentrum av Australia:
I eksemplet ovenfor er markøren plassert på kartet ved konstruksjon av markøren ved hjelp av map
-egenskapen i markøralternativene. Alternativt kan du legge markøren til kartet direkte ved å bruke markøren «s setMap()
-metoden, som vist i eksemplet nedenfor:
Markøren «s title
vises som en verktøytips.
Hvis du ikke ønsker å sende noen Marker options
i markørens konstruktør, må du i stedet sende et tomt objekt {}
i det siste argument for konstruktøren.
Se eksempel
Fjern en markør
For å fjerne en markør fra kartet, ring setMap()
metode som overfører null
som argument.
marker.setMap(null);
Merk at ovenstående metoden sletter ikke markøren. Det fjerner markøren fra kartet. Hvis du i stedet ønsker å slette markøren, bør du fjerne den fra kartet og deretter sette selve markøren til null
.
Hvis du ønsker å administrere en sett med markører, bør du opprette en matrise for å holde markørene. Ved hjelp av denne matrisen kan du ringe setMap()
på hver markør i matrisen etter tur når du trenger å fjerne markørene. Du kan slette markørene ved å fjerne dem fra kartet og deretter sette matrisen «s length
til 0
, som fjerner alle referanser til markører.
Se eksempel
Animer en markør
Du kan animere markører slik at de viser dynamisk bevegelse under en rekke forskjellige omstendigheter. For å spesifisere måten en markøren er animert, bruk markøren «s animation
-egenskapen, av typen google.maps.Animation
. Følgende Animation
verdier støttes:
-
DROP
indikerer at markøren skal falle fra toppen av kartet til sin endelige plassering når det først plasseres på kartet. Animasjonen slutter når markøren hviler oganimation
vil gå tilbake tilnull
. Denne typen animasjoner spesifiseres vanligvis under opprettelsen avMarker
. -
BOUNCE
indikerer at markøren skal sprette inn plass. En hoppemarkør vil fortsette å sprette tilanimation
-egenskapen er eksplisitt satt tilnull
.
Du kan starte en animasjon på en eksisterende markør ved å ringe setAnimation()
på Marker
-objektet.
Hvis du har mange markører , vil du kanskje ikke slippe dem på kartet samtidig. Du kan bruke setTimeout()
for å plassere markørene dine «animasjoner ved å bruke et mønster som vist nedenfor:
function drop() { for (var i =0; i markerArray.length; i++) { setTimeout(function() { addMarkerMethod(); }, i * 200); }}
Vis eksempel
Tilpass et markørbilde
Hvis du vil vise en bokstav eller et tall på en markør, kan du bruke en markørmerke.Hvis du trenger større tilpasning, kan du definere et ikon som skal vises i stedet for standard markørbilde. Å definere et ikon innebærer å angi et antall egenskaper som bestemmer markørens visuelle oppførsel.
Avsnittene nedenfor beskriver markøretiketter, enkle ikoner, komplekse ikoner og symboler (vektorikoner).
Merketiketter
En markøretikett er en bokstav eller et tall som vises inne i en markør. Markørbildet i denne delen viser en markøretikett med bokstaven «B». Du kan angi en markøretikett som enten en streng eller et MarkerLabel
-objekt som inkluderer en streng og andre etikettegenskaper.
Når du oppretter en markør, kan du angi en label
-egenskap i MarkerOptions
-objektet. Alternativt kan du ringe setLabel()
på Marker-objektet for å sette etiketten på en eksisterende markør.
Følgende eksempel viser merkede markører når brukeren klikker på kartet :
Enkle ikoner
I det mest grunnleggende tilfellet kan et ikon indikere et bilde som skal brukes i stedet for standard Google Maps pushpin-ikonet. For å spesifisere et slikt ikon, sett markøren «s icon
til URL-en til et bilde. Maps JavaScript API vil størrelse ikonet automatisk.
Komplekse ikoner
Det kan være lurt å spesifisere komplekse former for å indikere regioner som er klikkbare, og spesifisere hvordan ikonene skal vises i forhold til andre overlegg (deres «stabelrekkefølge»). Ikoner spesifisert på denne måten bør angi deres icon
egenskaper til et objekt av typen Icon
.
Icon
objekter definerer et bilde. De definerer også size
til ikonet, origin
til ikonet (hvis bildet du ønsker er en del av et større bilde i en sprite, for eksempel), og anchor
der ikonets hotspot skal være plassert (som er basert på opprinnelsen).
Hvis du bruker en etikett med en tilpasset markør, kan du plassere etiketten med labelOrigin
-egenskapen i objekt.
Konvertering av MarkerImage
objekter til type Icon
Inntil versjon 3.10 av Maps JavaScript API, ble komplekse ikoner definert som MarkerImage
objekter. Icon
bokstavelig objekt ble lagt til i versjon 3.10, og erstatter MarkerImage
fra versjon 3.11 og utover. Icon
objektlitteraler støtter de samme parametrene som MarkerImage
, slik at du enkelt kan konvertere en MarkerImage
til en Icon
ved å fjerne konstruktøren, pakke inn de forrige parameterne i {}
«s, og legge til navnene på hver parameter. For eksempel:
blir
Symboler
I tillegg til rasterbilder støtter en markør visning av vektorbaner kalt Symbols
. For å vise en vektorbane, send et Symbol
objekt bokstavelig med ønsket bane til markøren «s icon
-egenskap. Du kan bruke en av de forhåndsdefinerte stiene i google.maps.SymbolPath eller definere en tilpasset bane ved hjelp av SVG-stanotasjon.
For mer informasjon, se dokumentasjonen for symboler.
Lag en markør som kan trekkes
For å tillate brukere å dra en markør til et annet sted på kartet, sett draggable
til true
i markøralternativene.
Ytterligere markørtilpasning
For et fullstendig tilpasset markør, se det tilpassede popup-eksemplet.