- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我基本上使用它来使我的图像可以在 Canvas 中拖动。 Make image drawn on canvas draggable with JavaScript
我正在尝试添加触摸事件,除了 touchleave 之外,所有触摸事件都有效。当用户尝试将图像拖到 Canvas 之外时,touchleave 事件似乎不会触发。是否有其他触摸事件可以用于此目的?
最佳答案
请参阅this 。这里他们实际上是触发触摸事件的鼠标事件。这可能对你有帮助。
touchstart – to toggle drawing mode “on”
touchend – to toggle drawing mode “off”
touchmove – to track finger position, used in drawing
// Set up touch events for mobile, etc
canvas.addEventListener("touchstart", function (e) {
mousePos = getTouchPos(canvas, e);
var touch = e.touches[0];
var mouseEvent = new MouseEvent("mousedown", {
clientX: touch.clientX,
clientY: touch.clientY
});
canvas.dispatchEvent(mouseEvent);
}, false);
canvas.addEventListener("touchend", function (e) {
var mouseEvent = new MouseEvent("mouseup", {});
canvas.dispatchEvent(mouseEvent);
}, false);
canvas.addEventListener("touchmove", function (e) {
var touch = e.touches[0];
var mouseEvent = new MouseEvent("mousemove", {
clientX: touch.clientX,
clientY: touch.clientY
});
canvas.dispatchEvent(mouseEvent);
}, false);
// Get the position of a touch relative to the canvas
function getTouchPos(canvasDom, touchEvent) {
var rect = canvasDom.getBoundingClientRect();
return {
x: touchEvent.touches[0].clientX - rect.left,
y: touchEvent.touches[0].clientY - rect.top
};
}
关于javascript - 离开 Canvas 时 touchleave 不会触发 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43692542/
我想要我的页面上有一个 div 元素,当它被按下时它会增加页面上的数字。这相当简单,但我希望它也能在 iPad 和 Android 设备上运行。 我在 div 上使用 jQuery 绑定(bind)来
Javascript触摸事件是这样的:touchstart、touchend、touchmove、touchleave、touchcancel。我在 div 元素“#panel”上移动手指。 $(do
我在 mozilla website 阅读了有关 touchenter 和 touchleave 事件的信息和 w3 website , 但找不到任何支持它的浏览器或任何模拟该效果的 javascri
我基本上使用它来使我的图像可以在 Canvas 中拖动。 Make image drawn on canvas draggable with JavaScript 我正在尝试添加触摸事件,除了 tou
对于描述的基本场景 in the msdn overview (under Touch and Manipulation) TouchEnter 和 TouchLeave 分别为每个相应的 Touch
我是一名优秀的程序员,十分优秀!