在iOS上的Safari中,当用户触摸元素时,是否有CSS伪类?或者我必须使用javascript?
类似于:悬停在台式电脑上的工作方式,当手指触摸元素时,它会处于活动状态,然后一旦用户停止触摸元素,它就会处于非活动状态。
CSS目前没有为触摸范例定义任何用户动作伪类。
您必须监听事件并使用JavaScript进行相应的处理。事实上,苹果公司建议这样做;有关详细信息,请参阅《Safari Web内容指南》中的"处理事件"。例如,您需要查看touchstart
、touchend
、touchmove
和touchcancel
事件。
此处回答:https://stackoverflow.com/a/8877902/520129
<body ontouchstart=""> ... </body>
只应用一次,而不是每个按钮元素似乎都能修复页面上的所有按钮。或者你可以使用这个小JS名为"[Fastclick][1]"的库。它加快了触摸时的点击事件设备,并处理这个问题。
[1] :http://assanka.net/content/tech/2011/08/26/fastclick-native-like-tapping-for-touch-apps/