jQuery单击事件在iOS中不起作用

jQuery单击事件在iOS中不起作用

第二次更新:看起来我的一个函数(resetFigures)阻止了事件处理程序,因此将其移动到bind函数的末尾就将其排序。

更新:我在经过一些基本测试后意识到点击事件正在注册,只是在点击时盒子无法翻转。

我的网站基本美学功能在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


白衣非少年
浏览 944回答 3
3回答

FFIVE

您应该绑定tap事件,移动safari或UIWbview中不存在单击。您也可以使用此polyfill,以避免触摸链接时延迟300ms。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JQuery
iOS