我正在开发一款可在Android / iOS和台式电脑上运行的应用。
我应该使用click
还是tap
事件?
它们之间有什么区别?
“点按”会在桌面上运行吗?如果没有,(我必须使用click
)我是否遗漏了tap
对click
的所有优势?
答案 0 :(得分:26)
答案 1 :(得分:14)
触摸事件和鼠标事件是完全不同的野兽。它们不可互换。
那就是说,我正在使用jQuery Touch Punch将触摸事件映射到他们的鼠标事件类比,因此点击与点击相同。这使得它可以使用所有标准的jQuery UI优点,而无需进行任何特殊的触摸事件编程。它使用起来非常简单,到目前为止,它在iDevices和Android上都非常适合我。
答案 2 :(得分:8)
很抱歉打开旧帖子,但对于那些使用Phonegap处理jQuery的人来说:
“click”事件如果在“div”,“p”等元素上分配,则不会被触发,当“tap”使其在任何元素上完美运行时!我花了很长时间才注意到这一点。
结论,如果您使用jQuery mobile进行开发,我建议使用“tap”而不是“click”,因为它可能会导致一些问题
答案 3 :(得分:2)
我会查看jQM文档的事件,当前的文档在这里:
对于移动设备使用触摸事件,如果您需要鼠标事件,jQM也会为此提供虚拟鼠标事件。
虚拟鼠标事件
我们提供一组“虚拟”鼠标事件,试图抽象出鼠标和触摸事件。这个 允许开发人员注册基本鼠标事件的监听器, 例如mousedown,mousemove,mouseup和click,插件将会 注意在幕后注册正确的听众 以最快的速度为该设备调用侦听器。在 触摸环境,插件保留了触发事件的顺序 在传统的鼠标环境中可以看到,例如,vmouseup就是 总是在vmousedown之前调度,并在vclick之前调用vmousedown, 虚拟鼠标事件也标准化了如何协调 信息是从事件中提取的,因此基于触摸 环境,坐标可从pageX,pageY, screenX,screenY,clientX和clientY属性,直接在 事件对象。
我不是说“点击”事件不会像现在这样工作,例如你可以点击一个按钮。但是移动设备与桌面相比会有不同的事件