https://codepen.io/wangshaoji...
怎么实现空格+鼠标点击红色背景的区域移动位置,就相当与托横向滚动条和纵向滚动条的效果那样
const tapTime = 2000;
const dom = document.querySelector(".wrap");
let start, end;
function mousemove(e) {
end = Date.now();
if (end - start > tapTime) {
dom.scrollBy(-e.movementX, -e.movementY);
}
}
function mousedown(e) {
e.preventDefault();
if (e.ctrlKey) {
start = Date.now();
dom.addEventListener("mousemove", mousemove);
}
}
function mouseup(e) {
dom.removeEventListener("mousemove", mousemove);
}
dom.addEventListener("mousedown", mousedown);
dom.addEventListener("mouseup", mouseup);
长按时间可以修改tapTime
毫秒,https://codepen.io/easy-marti...
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
可以监听
mousedown
+mousemove
+mouseup
三个鼠标事件实现下面是 ctrl + 左键长按 进入移动模式的参考写法(移动时可松开 ctrl)
下面是 空格 + 左键长按 进入移动模式的参考写法(移动时可松开 空格)