当用户在指定的div上滑动手指时,我想触发一个事件。 例如:当用户在div上滑动手指时,应该调用特定的函数。
答案 0 :(得分:1)
这将添加事件处理程序:
document.getElementById('divId').addEventListener('mspointermove', handler, false);
然后你必须要识别它是触摸事件还是鼠标事件。
function handler(event) {
if (eventObject.pointerType === 2) {
// touch event
}
}
以下是触摸事件的complete guide。 msgesturestart / change / end可能是您想要使用的。
答案 1 :(得分:0)
您需要使用WinRT的完整手势识别器功能才能获得最佳体验。 MSDN有一个完整的样本here。这将允许您抓取DIV的操作并适当地使用它。一个简单的步骤是here。注意需要:
另一个考虑因素是查看您的体验并考虑是否使用mandatory snap points,并且滚动条中的多个项目可能适合您的体验。
一些示例代码:
<div id="touchMe" style="width:500px; height: 500px; background-color: yellow; "></div>
JavaScript,在touchMe可用时运行:
var v = document.getElementById("touchMe");
v.addEventListener("MSGestureStart", function () {
console.log("foo");
});
var gestureThing = new MSGesture();
gestureThing.target = v;
v.dooHicker = gestureThing;
v.addEventListener("MSPointerDown", function (e) {
gestureThing.addPointer(e.pointerId);
console.log("down");
});
v.addEventListener("click", function () {
console.log("click");
});