I have kml in local not in server and i wish to display kml into map how i can do this.
var polygons = dojo.filter(lyrs, function(lyr) { if ( lyr.geometryType == "esriGeometryPolygon" ) { return lyr; } })[0];
dojo.byId("info").innerHTML = ""; dojo.forEach(polygons.graphics, function(g) { // hide the graphic by default g.hide(); var node = dojo.create('div', { id: g.attributes.id, innerHTML: g.attributes.name }, dojo.byId("info")); // set up an event handlers to show the feature dojo.connect(node, "onmouseover", function() { g.show(); }); dojo.connect(node, "onmouseout", function() { g.hide(); }); });
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" /> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/> <title></title> <link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.5/js/dojo/dijit/themes/tundra/tundra.css"> <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.5/js/esri/dijit/css/Popup.css"/> <style> html, body { height: 100%; width: 100%; margin: 0; padding: 0; } #map { margin: 0; padding: 0; } #meta { position: absolute; left: 20px; bottom: 20px; width: 300px; height: 100px; z-index: 40; background: #fff; color: #777; padding: 5px; border: 5px solid #777; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; font-family: arial; font-size: 0.9em; } #meta h3 { color: #000; font-size: 1.1em; padding: 0px; margin: 0px; display: inline-block; } #loading { float: right; } </style> <script>var dojoConfig = { parseOnLoad: true };</script> <script src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.5"></script> <script> dojo.require("dijit.layout.BorderContainer"); dojo.require("dijit.layout.ContentPane"); dojo.require("esri.map"); dojo.require("esri.layers.KMLLayer"); var map; function init() { var initExtent = new esri.geometry.Extent({"xmin":-13787751,"ymin":4476990,"xmax":-10404954,"ymax":6049759,"spatialReference":{"wkid":102100}}); map = new esri.Map("map",{ extent: initExtent }); var basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer"); map.addLayer(basemap); var kmlUrl = 'http://dl.dropbox.com/u/2654618/kml/Wyoming.kml'; var kml = new esri.layers.KMLLayer(kmlUrl, { visible: false }); map.addLayer(kml); dojo.connect(kml, 'onLoad', configureMouseOver); dojo.connect(map, 'onLoad', function() { //resize the map when the browser resizes dojo.connect(dijit.byId('map'), 'resize', map,map.resize); }); } function configureMouseOver(kml) { // get layers var lyrs = kml.getLayers(); var polygons = dojo.filter(lyrs, function(lyr) { if ( lyr.geometryType == "esriGeometryPolygon" ) { return lyr; } })[0]; console.log('polygons: ', polygons); dojo.byId("info").innerHTML = ""; dojo.forEach(polygons.graphics, function(g) { // hide the graphic by default g.hide(); var node = dojo.create('div', { id: g.attributes.id, innerHTML: g.attributes.name }, dojo.byId("info")); // set up an event handlers to show the feature dojo.connect(node, "onmouseover", function() { g.show(); }); dojo.connect(node, "onmouseout", function() { g.hide(); }); }); // turn the layer on but no graphics will // show because they were previously hidden kml.show(); } dojo.ready(init); </script> </head> <body class="tundra"> <div data-dojo-type="dijit.layout.BorderContainer" data-dojo-props="design:'headline',gutters:false" style="width: 100%; height: 100%; margin: 0;"> <div id="map" data-dojo-type="dijit.layout.ContentPane" data-dojo-props="region:'center'"> <div id="meta"> <h3>Display KML Using a <a href="http://help.arcgis.com/en/webapi/javascript/arcgis/help/jsapi/kmllayer.htm">KMLLayer</a></h3> <div id="info">The map displays a simple KML file that was created using Google Earth and is hosted on an Esri server. Symbology and attributes are honored.</div> <div> </div> </div> </body> </html>
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.