Горячая клавиша ArcGIS работает за пределами карты - PullRequest
0 голосов
/ 29 мая 2018

сделать карту на странице:

function initMap() {
        return require([
                            "esri/map",
                            "esri/layers/ArcGISTiledMapServiceLayer",
                            "esri/layers/ArcGISDynamicMapServiceLayer",
                            "esri/layers/FeatureLayer",
                            "esri/graphic",
                            "esri/symbols/SimpleFillSymbol",
                            "esri/symbols/SimpleMarkerSymbol",
                            "esri/symbols/SimpleLineSymbol",
                            "esri/symbols/TextSymbol",
                            "esri/symbols/Font",
                            "esri/geometry/Circle",
                            "esri/geometry/Polygon",
                            "esri/geometry/Point",
                            "esri/SpatialReference",
                            "esri/geometry/webMercatorUtils",
                            "esri/layers/GraphicsLayer",
                            "dojo/request/script",
                            "dojo/_base/array",
                            "dojo/promise/all", "dojo/Deferred", "dojo/dom", "dojo/on", "dojo/json",
                            "esri/symbols/PictureMarkerSymbol",
                            "esri/symbols/CartographicLineSymbol",
                            "esri/geometry/Polyline",
                            "esri/Color",
                            "dojo/dom-construct",
                            "dojox/charting/Chart",
                            "dojo/domReady!"
        ],
        function (  Map, ArcGISTiledMapServiceLayer, ArcGISDynamicMapServiceLayer, FeatureLayer, Graphic, SimpleFillSymbol,
                    SimpleMarkerSymbol, SimpleLineSymbol, TextSymbol, Font, Circle, Polygon, Point, SpatialReference,
                    webMercatorUtils, GraphicsLayer, script, array, all, Deferred, dom, on, JSON, PictureMarkerSymbol, CartographicLineSymbol, Polyline, Color, domConstruct, Chart) {  // function parameters must be in the same order as requires

            map = new Map("map", {
                center: [99.999, 99.999],
                zoom: 12,
            });
            var mapServiceURL = "http://server.com/arcgis2/rest/services/Common/BASEMAP_BIPD/MapServer";
                map.addLayer(new esri.layers.ArcGISTiledMapServiceLayer(mapServiceURL));
           });
    }

это показывает правильно.С картой сделайте то же самое текстовое поле на странице.Иногда пользователь записывает в текстовое поле любое число, используя цифровую клавиатуру справа от клавиатуры (рядом с numlock), число не записывается, но карта запускается с клавиатуры.Numlock в числовом состоянии.Это не каждый раз.затем пользователь щелкает любые другие текстовые поля и возвращается к этому, чтобы продолжить номер записи - он пишет правильно.

Как исправить это или отключить горячую клавишу arcgis?

(на всякий раз: подключаю карту на страницеПри этом необходимо указывать карту, а не указывать цифру (правильное положение).починить такое нездоровое поведение?)

1 Ответ

0 голосов
/ 07 июня 2018

Одним из решений было бы отключение навигации по клавиатуре карты, когда пользователь фокусируется в текстовом поле.Затем, когда сфокусируйтесь, включите его снова.Для этого используйте эти функции, найденные в документах :

map.enableKeyboardNavigation();
map.disableKeyboardNavigation();
map.isKeyboardNavigation;
...