Javascript Win 8应用程序通过手指滑动触发事件

Javascript Win 8应用程序通过手指滑动触发事件,javascript,touch,windows-runtime,winjs,Javascript,Touch,Windows Runtime,Winjs,当用户在指定的div上滑动手指时,我想触发一个事件。 例如:当用户在div上滑动手指时,应调用特定函数。这将添加事件处理程序: document.getElementById('divId').addEventListener('mspointermove', handler, false); 然后,您必须识别是触摸事件还是鼠标事件 function handler(event) { if (eventObject.pointerType === 2) { // tou

当用户在指定的div上滑动手指时,我想触发一个事件。
例如:当用户在div上滑动手指时,应调用特定函数。

这将添加事件处理程序:

document.getElementById('divId').addEventListener('mspointermove', handler, false);
然后,您必须识别是触摸事件还是鼠标事件

function handler(event) {
    if (eventObject.pointerType === 2) {
        // touch event
    }
}

下面是触摸事件的一个示例。msgesturestart/change/end可能是您想要利用的功能。

这将添加事件处理程序:

document.getElementById('divId').addEventListener('mspointermove', handler, false);
然后,您必须识别是触摸事件还是鼠标事件

function handler(event) {
    if (eventObject.pointerType === 2) {
        // touch event
    }
}

下面是触摸事件的一个示例。msgesturestart/change/end可能是您想要利用的功能。

您需要使用WinRT提供的完整手势识别器功能,以获得最佳体验。MSDN有一个完整的样品。这将允许您抓取DIV的操作,并根据需要使用它。一个简单的步行就是。注意到需要:

  • 创建一个手势对象
  • 捕获MSPointerDown,并将指针ID添加到在1中创建的手势实例中
  • 另一个考虑是看你的经验,考虑是否使用,以及滚动中的多个项目可能对你的经验起作用。

    一些示例代码:

    <div id="touchMe" style="width:500px; height: 500px; background-color: yellow; "></div>
    

    您需要使用WinRT的完整手势识别器功能以获得最佳体验。MSDN有一个完整的样品。这将允许您抓取DIV的操作,并根据需要使用它。一个简单的步行就是。注意到需要:

  • 创建一个手势对象
  • 捕获MSPointerDown,并将指针ID添加到在1中创建的手势实例中
  • 另一个考虑是看你的经验,考虑是否使用,以及滚动中的多个项目可能对你的经验起作用。

    一些示例代码:

    <div id="touchMe" style="width:500px; height: 500px; background-color: yellow; "></div>
    

    谢谢,我已经试过了,我想要的是我有一个日历,在这个日历上我有一个显示月份的左栏,还有两个按钮。现在,通过单击按钮并调用nextmonth()函数来显示下个月,这和我想用触摸手势做的一样,比如当你滑动月份时,应该调用nextmonth()。谢谢,我已经尝试过了,我想要的是我有一个日历,我有一个左栏,显示月份,有两个按钮。现在,通过单击按钮并调用nextmonth()函数来显示下个月,这与我想对触摸手势所做的相同,比如当你滑动月份时,应更改该月份,即应调用nextmonth()。我尝试了以下代码:this.element.querySelector(“.bartouch”).addEventListener(“MSGestureStart”,function(){that.nextMonth();});并且也尝试了MSPointerUp和MSPointerDown,但没有任何帮助。您要求它做什么。它会在手势开始时通知您。您需要准确定义您的手势是什么——这就是我链接示例的原因。手势涉及许多不同的部分。有一些内置手势识别器,它们也从示例链接而来。My req注意,当手势结束时,它应该调用我的函数,就像我用手指滑动下一页一样。有多远?你会接受与直线的偏差有多大?没有“简单”回答。您需要仔细查看我链接到的示例。您可能需要查看操纵TranslateXRails类型的手势并使用它。我尝试了以下代码:this.element.querySelector(“.bartouch”).addEventListener(“MSGestureStart”,function(){that.nextMonth();});并且也尝试了MSPointerUp和MSPointerDown,但没有任何帮助。您要求它做什么。它会在手势开始时通知您。您需要准确定义您的手势是什么——这就是我链接示例的原因。手势涉及许多不同的部分。有一些内置手势识别器,它们也从示例链接而来。My req注意,当手势结束时,它应该调用我的函数,就像我用手指滑动下一页一样。有多远?你会接受与直线的偏差有多大?没有“简单”回答。您需要仔细查看我链接的示例。您可能需要查看操纵TranslateXRails类型的手势,并使用它。