【问题标题】:iPad Javascript/jQuery touchstart issueiPad Javascript/jQuery touchstart 问题
【发布时间】:2011-10-24 00:45:06
【问题描述】:

我在 iPad 上有一个页面,但在实现等效的鼠标移出行为时遇到了一些问题。

所以我有:

  1. 在我的页面上,点击(或者更确切地说是触摸)有一个复选框,我想显示一个错误消息
  2. 点击/触摸除 errorMsg 以外的任何内容时,我想隐藏 errorMsg

下面是我写的代码;

$(document).bind("touchstart",function(e){
         if(e.target.id != "checkbox_err")
        $("span#checkbox_err").fadeOut("slow");
     });
}


$("input:checkbox").bind("touchstart",function(){
$("span#checkbox_err").fadeIn("fast");

});

现在的问题是当我单击/触摸复选框时,errorMsg 会显示一段时间,然后它也会立即隐藏它(因为目标不是 errorMsg)

我该如何解决这个问题?

【问题讨论】:

    标签: javascript jquery iphone ios ipad


    【解决方案1】:

    据我所知,没有必要实现触摸事件来实现您想要的。您可以使用常见的点击事件。它将被设备的浏览器模拟。

    【讨论】:

      【解决方案2】:

      只需使用更改事件而不是 touchstart。 它应该也可以在桌面浏览器和触摸浏览器中运行。

      【讨论】:

      • 你所说的变化究竟是指哪个事件?
      • 好的..所以我的元素是一个只读的 SPAN 元素...所以 change() 不会有任何帮助..
      【解决方案3】:

      听起来像鬼点击,在这里阅读http://code.google.com/mobile/articles/fast_buttons.html

      【讨论】:

        【解决方案4】:

        试试这个 js fiddle 代码。它同时适用于所有主流浏览器和所有触摸设备..

        http://jsfiddle.net/vecny/

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-07
          • 1970-01-01
          • 1970-01-01
          • 2013-11-24
          • 1970-01-01
          • 2012-12-05
          • 2011-02-18
          相关资源
          最近更新 更多