在Internet 11中,我面临鼠标拖动事件表单ArcGIS API for JavaScript 3.9的问题,代码如下:
map.on("mouse-drag", zobraudalost);
function zobraudalost() {
alert("test");
}问题是,这个事件不会在IE11(以及鼠标拖动启动,鼠标拖动端)触发。但在其他浏览器上,它工作正常(IE9、火狐、Chrome)。另一个问题是其他鼠标事件(点击、鼠标移动等)在IE 11上运行良好,所以问题仅限于鼠标拖动。
你见过这样的问题吗?你知道IE11中是否有一些安全设置可以禁用鼠标拖动事件吗?
发布于 2016-05-02 10:15:45
这个问题与ArcGis JS版本有关。
我只是简单地更新了API3.9到3.16,并且它也开始在IE中工作。
下面是要验证的正在运行的小提琴链接。
费德勒:https://jsfiddle.net/vikash2402/j6h00uyt/1/
我在IE11、chrome和firefox.中进行了验证。
var map;
require(["esri/map", "dojo/domReady!"], function(Map) {
map = new Map("map", {
basemap: "topo",
center: [-122.45, 37.75], // longitude, latitude
zoom: 13
});
map.on("mouse-drag", drag);
function drag() {
alert("mouse-drag");
}
});html, body, #map {
height: 100%;
width: 100%;
margin: 0;
padding: 0;
}<link href="https://js.arcgis.com/3.16/esri/css/esri.css" rel="stylesheet"/>
<script src="https://js.arcgis.com/3.16/init.js"></script>
<body>
<div id="map"></div>
</body>
希望这能帮助你:)
发布于 2014-11-20 19:43:16
我在IE11中试图捕捉鼠标时也遇到了类似的问题。这里是我发现的有效解决方案:
更改为您可能需要的拖动事件。
if(window.PointerEvent) {
elm.addEventListener("pointermove", foo);
} else if (window.MSPointerEvent) {
elm.addEventListener("MSPointerMove", foo);
} else {
elm.addEventListener("mousemove", foo);
}这不是你的确切解决方案,而是以上两者的结合。
https://stackoverflow.com/questions/23672908
复制相似问题