Več

Prikažite informacijsko okno ArcGIS na Init Map

Prikažite informacijsko okno ArcGIS na Init Map


Ustvaril sem zemljevid s preprostim označevalcem na določeni lokaciji, vendar ne morem ugotoviti, kako naj se okno z informacijami, pritrjeno na položaj, samodejno odpre pri nalaganju strani.

To je moja init funkcija:

// Postavite zahtevane knjižnice dojo.require ("dijit.layout.BorderContainer"); dojo.require ("dijit.layout.ContentPane"); dojo.require ("dijit.TitlePane"); dojo.require ("esri.map"); dojo.require ("esri.dijit.Popup"); dojo.require ("esri.symbol"); dojo.require ("esri.dijit.BasemapGallery"); dojo.require ("esri.arcgis.utils"); dojo.require ("esri.dijit.Geocoder"); var zemljevid = nič; var gsvc = nič; var pt = nič; function init () {esri.config.defaults.geometryService = novi esri.tasks.GeometryService ("http://tasks.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer"); // ustvari zemljevid map = new esri.Map ("map", {basemap: "topo", // Možnosti: "ulice", "satelit", "hibrid", "topo", "sivo", "oceani" , "national-geographic", "osm" center: [ @Model.Longitude.ToString (), @Model.Latitude.ToString ()], // long, lat (sredi ZDA) 2140164826 zoom: 11, logo: napačno}); // dodamo galerijo osnovnih kart var basemapGallery = new esri.dijit.BasemapGallery ({showArcGISBasemaps: true, map: map}, "basemapGallery"); basemapGallery.startup (); var Geocoder = nov esri.dijit.Geocoder ({map: map}, dojo.byId ("iskanje")); Geocoder.startup (); dojo.connect (basemapGallery, "onError", funkcija (sporočilo) {console.log (sporočilo)}); dojo.connect (zemljevid, "onClick", projectToLatLong); var point = nova esri.geometry.Point ( @Model.Longitude, @Model.Latitude); point = esri.geometry.geographicToWebMercator (točka); var simbol = nov esri.symbol.SimpleMarkerSymbol (). setColor (nov dojo.Color ([255, 0, 0, 0.5])); var graphics = nov esri.Graphic (točka, simbol); var sloj = novi esri.layers.GraphicsLayer (); layer.add (grafično); map.addLayer (plast); }

Dokumentacija API prikazuje 4 parametre, ki jih lahko uporabite pri ustvarjanju grafike ...

nova grafika (geometrija ?, simbol ?, atributi ?, infoTemplate?)

glejte Dokumentacijo API za "Graphic". Nastaviti morate samo svojo predlogo za podatke in jo nato med klicem priložiti grafiki. Trenutno uporabljate samo 2 od 4 parametrov.

Oglejte si ta vzorec Geokodiranje naslova. V ta vzorec vnesete naslov, skript pa doda grafično točko za ta naslov in zanj ustvari info predlogo. To bi moralo pomagati.

Če dejansko želite, da se ob nalaganju prikažejo podatki, boste morali dodati funkcijo, ki se zažene, ko se zemljevid naloži.

map.on ("load", executeIdentifyTask);

To bo ista funkcija, ki bi jo običajno poklicali ob dogodku klika

map.on ("klik", executeIdentifyTask);

namesto tega ga zaženete iz dogodka load.


Poglej si posnetek: Okno Okno Okno