Javascript 在触摸事件中定位元素(移动safari)
我正在处理Javascript事件(一个我完全不熟悉的主题),并且需要一些关于在mobile safari中处理触摸事件的指导 我有一个类似以下内容的文档:Javascript 在触摸事件中定位元素(移动safari),javascript,webkit,mobile-safari,touch-event,Javascript,Webkit,Mobile Safari,Touch Event,我正在处理Javascript事件(一个我完全不熟悉的主题),并且需要一些关于在mobile safari中处理触摸事件的指导 我有一个类似以下内容的文档: <div> <span>one</span><span>two</span> </div> 一二 我想突出显示用户当前触摸的范围 我已经成功地去了您可能想结帐 它会创建一个名为“点击”的事件 您可以在此处玩jqtouch的演示您可能想要签出 它会创建一个名
<div>
<span>one</span><span>two</span>
</div>
一二
我想突出显示用户当前触摸的范围
我已经成功地去了您可能想结帐 它会创建一个名为“点击”的事件
您可以在此处玩jqtouch的演示您可能想要签出 它会创建一个名为“点击”的事件
您可以在此处使用jqtouch的演示我制定的解决方案是将eventListeners添加到文档中:
document.addEventListener("touchstart", touchStart, "true");
document.addEventListener("touchmove", touchMove, "true");
document.addEventListener("touchend", touchEnd, "true");
然后对每个触摸事件执行所需操作。我之所以给它加上星号,是因为它不是有位置的事件本身(就像在正常的事件处理中),而是有位置的触摸集
function touchMove(event)
{
// // Prevent the webview itself from scrolling / bouncing around
event.preventDefault();
// Only track one finger
if ( event.touches.length == 1)
{
var touch = event.touches[0];
doStuffAtPosition(touch.pageX, touch.pageY);
}
}
我制定的解决方案是将eventListeners添加到文档中:
document.addEventListener("touchstart", touchStart, "true");
document.addEventListener("touchmove", touchMove, "true");
document.addEventListener("touchend", touchEnd, "true");
然后对每个触摸事件执行所需操作。我之所以给它加上星号,是因为它不是有位置的事件本身(就像在正常的事件处理中),而是有位置的触摸集
function touchMove(event)
{
// // Prevent the webview itself from scrolling / bouncing around
event.preventDefault();
// Only track one finger
if ( event.touches.length == 1)
{
var touch = event.touches[0];
doStuffAtPosition(touch.pageX, touch.pageY);
}
}