gpt4 book ai didi

javascript - 如何使用鼠标中轮按钮拖动 Openseadragon Canvas

转载 作者:行者123 更新时间:2023-11-30 20:00:58 24 4
gpt4 key购买 nike

我正在使用带有 fabricjs 覆盖的 Openseadragon 库。我有一种情况,我想拖动 Canvas ,而不是鼠标主按钮,我想通过按下鼠标中键来拖动它。谁能帮我得到想要的行为?

最佳答案

OpenSeadragon 没有用于此的标志,但您可以使用 MouseTracker 轻松构建它。这是一个示例(根据内存编码,未经测试,但它应该可以让您了解)。

var drag;

var mouseTracker = new OpenSeadragon.MouseTracker({
element: viewer.container,
nonPrimaryPressHandler: function(event) {
if (event.button === 1) { // Middle
drag = {
lastPos: event.position.clone()
};
}
},
moveHandler: function(event) {
if (drag) {
var deltaPixels = drag.lastPos.minus(event.position);
var deltaPoints = viewer.viewport.deltaPointsFromPixels(deltaPixels);
viewer.viewport.panBy(deltaPoints);
drag.lastPos = event.position.clone();
}
},
nonPrimaryReleaseHandler: function(event) {
if (event.button === 1) {
drag = null;
}
}
});

编辑:我在上面的示例代码中有一个错误;固定。

关于javascript - 如何使用鼠标中轮按钮拖动 Openseadragon Canvas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53387311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com