【问题标题】:jQuery click() event does not work in Android BrowserjQuery click() 事件在 Android 浏览器中不起作用
【发布时间】:2012-12-30 17:22:39
【问题描述】:

此代码在 Chrome 中运行,但不在 Android 浏览器或适用于 Android 18 的 Chrome(Android 4.2;CyanogenMod 10.1)中:

$(function(){
    $(".save").click(function(){
        alert('Saved');
    });
});

​ 工作示例:http://jsfiddle.net/BCVdc/4/

是否有一些 jQuery/Android 浏览器不兼容?

已解决:错误与此代码无关...

【问题讨论】:

    标签: android jquery android-browser


    【解决方案1】:
    $(function(){
        $(".save").click(function(){
            alert('Saved');
            return false;
        });
    });
    

    上面的代码应该可以解决问题。

    【讨论】:

      【解决方案2】:

      我没有要测试的 Android 浏览器,但您可能会遇到链接没有有效 href 属性的问题。

      顺便说一句,这也是为什么一些浏览器也不会应用默认锚 CSS 的原因。 IE。通常的蓝色和下划线。

      【讨论】:

        【解决方案3】:

        试试这个代码

        $(function(){
            $(".save").live('tap',function(event){
                alert('Saved1');
            });
        $(".save").live('click',function(event){
                alert('Saved2');
            });
        });
        

        请在您的 android 中测试它并告诉我们显示的是哪个警报。

        【讨论】:

        • live 已弃用。你应该改用on
        【解决方案4】:

        我在尝试在现有的 android 浏览器上使用 .click 方法时遇到了类似的问题。似乎将 .click 替换为 $('selector').on('click', cb); 可以解决问题。

        【讨论】:

          【解决方案5】:

          在移动端无法点击,但可以使用 onchange 功能。

          $(function(){
            $('.save').on('change', function (event) {
              event.preventDefault();
              alert('Saved');
            });
          });
          

          【讨论】:

            猜你喜欢
            • 2016-11-21
            • 1970-01-01
            • 2014-03-05
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多