我正在尝试当鼠标悬停在某个元素内时激活交互。它工作得还好... 问题是如果你的鼠标移动得很慢,交互仍然保持激活状态。这是OL3的Bug吗?还是我应该用不同的方式?代码:http://jsfiddle.net/gmaq54dm/3/。
olMap.on("pointermove", function (e) {
if (e.dragging) {
return;
}
var map = e.map;
console.log(e.pixel);
var feature = map.forEachFeatureAtPixel(e.pixel, function(feature, layer) {
return feature;
});
var hit = (feature) ? true : false;
console.log(hit);
olDraw.setActive(hit);
});
谢谢
setTimeout
调用中,这样它会在处理完pointermove事件之后被调用:window.setTimeout(function() { olDraw.setActive(hit); }, 0);
- ahocevar