第二次更新:看起来我的一个函数(resetFigures)阻止了事件处理程序,因此将其移至绑定函数的末尾将其整理出来。
更新:经过一些基本测试后,我意识到点击事件正在注册,只是点击时框无法翻转。
我的网站在 Chrome 和 Firefox 中运行的基本美学功能,但它拒绝在 iOS 上正常运行(在 iOS 6.1 的 iPhone 4 和 iOS 4.3.5 的 iPad 上测试)。
您可以在此处查看该站点,当然还有脚本 (main.js):http: //bos.rggwebdesigns.com/
我读过 iOS 并没有真正正确地处理 jQuery 点击事件,但我正在努力寻找解决方法。Stack Overflow 上的几个线程提到了 live() 方法,但如下实现它(以及添加onclick=""
到可点击元素)似乎不起作用:
$('.card').live('click touchstart', function() {
var figure = $(this).children('.back');
var button = figure.find('.button');
var column = $(this).parents().eq(1);
$('.column').removeAttr('style');
column.css('z-index', 2000);
resetFigures();
if(flipCard(this)){
swoosh.pause();
swoosh.currentTime = 0;
swoosh.play();
}
});
我还遇到了这个有趣的解决方法项目:http ://aanandprasad.com/articles/jquery-tappable/ 。但是,我也没有运气:
$('.card').tappable(function() {
var figure = $(this).children('.back');
var button = figure.find('.button');
var column = $(this).parents().eq(1);
$('.column').removeAttr('style');
column.css('z-index', 2000);
resetFigures();
if(flipCard(this)){
swoosh.pause();
swoosh.currentTime = 0;
swoosh.play();
}
});
另外,如果我被误导了,请纠正我,但根据这个网站,iOS 支持 3D 转换,并带有适当的前缀:http ://caniuse.com/transforms3d