Есть ли способ отключить выделение границ при нажатии графического объекта на векторном слое?

У меня есть векторный слой, который щелкает графический объект, появляется информационное окно со сводкой, которая включает данные других графических объектов с тем же именем «пруд», последняя версия arcgis для javascript добавляет функцию, которая выделяет границу щелкнутого графический объект, это то, чего я не хочу, так как всплывающие окна содержат сводку всех графических объектов с одним и тем же атрибутом (название пруда). Только выделение щелкнутого объекта вызовет путаницу.

Есть ли способ отключить выделение границы выбранного объекта?


person Benjamin Di    schedule 29.07.2015    source источник


Ответы (2)


Спасибо за ответ. Это было полезно. В моем случае мне пришлось использовать SimpleMarkerSymbol() и SimpleLineSymbol(), так как мне нужно отключить подсветку точечных и линейных объектов. Вот мое решение, если кому-то еще нужно:

require(["esri/symbols/SimpleMarkerSymbol", "esri/symbols/SimpleLineSymbol",], function(SimpleMarkerSymbol, SimpleLineSymbol))
{
  map.infoWindow.markerSymbol = new SimpleMarkerSymbol().setSize("0");
  map.infoWindow.lineSymbol = new SimpleLineSymbol().setWidth(0);
}
person Cem    schedule 09.12.2015

Трудно сказать без кода, но попробуйте это после создания экземпляра объекта Map:

map.infoWindow.fillSymbol = new SimpleFillSymbol(SimpleFillSymbol.STYLE_NULL);

Это переопределяет символ выделения, используемый при щелчке объекта.

Вот полный пример:

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/>
        <title>Disable Highlighting</title>
        <link rel="stylesheet" href="http://js.arcgis.com/3.14/esri/css/esri.css">
        <style>
            html, body, #map {
                height: 100%;
                width: 100%;
                margin: 0;
                padding: 0;
            }
            body {
                background-color: #FFF;
                overflow: hidden;
                font-family: "Trebuchet MS";
            }
        </style>
        <script src="http://js.arcgis.com/3.14/"></script>
        <script>
            var map;
            var featureLayer;

            require(["esri/map", "esri/layers/FeatureLayer", "esri/InfoTemplate",
                    "esri/symbols/SimpleFillSymbol", "esri/symbols/SimpleLineSymbol", "esri/Color",
                    "dojo/domReady!"],
            function(Map, FeatureLayer, InfoTemplate,
                    SimpleFillSymbol, SimpleLineSymbol, Color) {
                map = new Map("map", {
                    basemap: "topo",
                    center: [-122.45, 37.75],
                    zoom: 4
                });

                featureLayer = new FeatureLayer("http://services.arcgis.com/P3ePLMYs2RVChkJx/ArcGIS/rest/services/CDC_Weekly_Flu_Surveillance_Map/FeatureServer/0", {
                    infoTemplate: new InfoTemplate()
                });
                //The following line overrides the highlight symbol used when a feature is clicked.
                map.infoWindow.fillSymbol = new SimpleFillSymbol(SimpleFillSymbol.STYLE_NULL);
                map.addLayer(featureLayer);
            });
        </script>
    </head>

    <body>
        <div id="map"></div>
    </body>
</html>
person Gary Sheppard    schedule 30.07.2015