我在Sencha Touch应用程序中有一个谷歌地图,我在它上面绘制了许多svg元素。
现在我想在每个svg元素上添加触摸并保持(意味着它将在用户触摸并在svg元素上保持超过1.5秒的图形时触发)并且当偶数被触发时,我&# 39; d喜欢弹出与点击的svg元素相关联的信息对话框。
我试过:Ext.util.TaPrepeater(没有工作)
var startTime
Ext.create('Ext.util.TapRepeater', {
el: drawnElements[uniqueTrackID],
listeners: {
touchstart: function () {
startTime = new Date();
},
touchend: function () {
var now = new Date();
if (now - startTime >= 1500)
{
Ext.Msg.alert("haha");
}
}
}
});
还尝试直接在svg上添加事件(也没有工作)
drawnElements[uniqueTrackID].on('touchstart', function () {
startTime = new Date();
});
drawnElements[uniqueTrackID].on('touchend', function () {
var rightNow = new Date();
if (rightNow - startTime >= 1500) {
Ext.Msg.alert("haha");
}
});
发现相关帖子非常有限。
有人可以帮忙吗?
答案 0 :(得分:1)
touchstart和touchend事件有争议。其中一个是触摸细节(参数[0])。你可以使用这样的东西:
touchstart: function (details) {
userTime = details.touch.timeStamp;
}