jQuery 显示和隐藏在 iPad 或 iPhone 上不起作用

Posted

技术标签:

【中文标题】jQuery 显示和隐藏在 iPad 或 iPhone 上不起作用【英文标题】:jQuery show & hide not working on iPad or iPhone 【发布时间】:2014-04-22 22:52:49 【问题描述】:

以下代码中的所有函数在桌面浏览器上都可以正常工作,但在 iPad 和 iPhone 上,前 2 个函数可以正常工作,但第 3 个函数(开始 $('input#pagebreakhomeNext').click(function () ) 根本不起作用。

jQuery.noConflict();
jQuery(document).ready(function($)
    $('div.rsform-block-pagebreak input').click(function () 
    $(window).scrollTop($('div.calculator').offset().top);
    return false;
    );
    $('a#pagebreaksubmitNext').click(function () 
    $(window).scrollTop($('div.calculator').offset().top);
    return false;
    );
    $('input#pagebreakhomeNext').click(function () 
        if ($('input#postcode').val() != "") 
            var code = $('input#postcode').val();
        $.ajax(
        url: “URL HIDDEN”,
        dataType: "json",
        data: 'code='+code,
        async: false,
        success: function(json) 
            if((json.found) && $('input.benefits:checked').val() != "I do not get any of these benefits" && $('input.ownership:checked').val() == "Yes" && $('input.insulation:checked').val() == "Yes" && $('input.walls:checked').val() == "Solid Walls" && $('input.houseage:checked').val() == "Between 1930 and 1976")  $('div.rsform-block-success').hide(); $('div.rsform-block-failure').show();          
            else if((json.found) && $('input.benefits:checked').val() != "I do not get any of these benefits" && $('input.ownership:checked').val() == "Yes" && $('input.insulation:checked').val() == "Yes" && $('input.walls:checked').val() == "Solid Walls" && $('input.houseage:checked').val() == "After 1980")  $('div.rsform-block-success').hide(); $('div.rsform-block-failure').show(); 
            else  $('div.rsform-block-success').show(); $('div.rsform-block-failure').hide(); 
        
        );
        
    );
);

有人可以帮忙吗?!

【问题讨论】:

【参考方案1】:

使用“touchstart”事件而不是“click”。

【讨论】:

这对我有用,我替换了 $(document).on('click', '#featuredPlayer', function () ); with $(document).on('touchstart', '#featuredPlayer', function () );

以上是关于jQuery 显示和隐藏在 iPad 或 iPhone 上不起作用的主要内容,如果未能解决你的问题,请参考以下文章

如何使用jQuery在三个或更多条件下显示和隐藏元素?

js、jquery 如何隐藏浏览器地址栏(网页优化,手机可以,ipad mini不可以,求大神指教)

jquery单击按钮显示或隐藏

如何通过jquery隐藏和显示元素

jQuery 或 PHP - 如果启用/禁用另一个 DIV,则显示/隐藏 DIV 或 LI

缩略图图像不显示在 iPhone 或 iPad 上,但在 Android 上显示