我目前正在进行CSS转换,正在努力寻找合适的Javascript以使其在移动设备上正常运行。
http://seancrater.com/test/
在“ Dirty Dozen Plus”部分中,可以看到过渡。我目前有
    ontouchstart =“ this.classList.toggle('hover');
已添加到每个DIV中,但当前需要您从移动设备上按住它以使其处于过渡状态。我想知道是否有人可以通过单击使它保持过渡状态,从而给我一些见识。我尝试了伪:focus,它阻止了它一起运行。
谢谢! -西恩

最佳答案

正如其他人所述,您需要避免:hover。

解决问题的最简单方法是像这样更新CSS:

.top:hover,
.top.touched {
    -webkit-transform:translateY(-150px);
    -webkit-transition: all .5s;
}


然后将touched作为类添加到touchstarttouchend上的元素。我的猜测是,您将希望保持当前已触摸哪个元素,因此可以在用户滚动或触摸另一个元素时删除过渡状态。

(编辑:更新了小提琴以允许用户点击关闭元素)
http://jsfiddle.net/4n6Z4/1/

外壳,以便在智能手机上进行更轻松的测试:
http://fiddle.jshell.net/4n6Z4/1/show/

关于javascript - 无法获得此CSS过渡以在iPhone上正常运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22791044/

10-11 13:41
查看更多