最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

iPad JavascriptjQuery touchstart issue - Stack Overflow

programmeradmin2浏览0评论

I have a page on iPad and am facing some issues implementing an equivalent of mouseout behavior.

So I have:

  1. On my page, there is a checkbox on click (or rather touch), I want to show an errorMsg
  2. On click/touch on anything other than the errorMsg, I want to hide the errorMsg

Below is the code I have written;

$(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");

});

Now the issue is when I click/touch on the checkbox, the errorMsg shows for a while and then it also hides it immediately (since target is not the errorMsg)

How do I fix this issue?

I have a page on iPad and am facing some issues implementing an equivalent of mouseout behavior.

So I have:

  1. On my page, there is a checkbox on click (or rather touch), I want to show an errorMsg
  2. On click/touch on anything other than the errorMsg, I want to hide the errorMsg

Below is the code I have written;

$(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");

});

Now the issue is when I click/touch on the checkbox, the errorMsg shows for a while and then it also hides it immediately (since target is not the errorMsg)

How do I fix this issue?

Share Improve this question edited Aug 10, 2011 at 19:26 joelittlejohn 11.8k2 gold badges42 silver badges54 bronze badges asked Aug 10, 2011 at 11:52 DianaDiana 4351 gold badge11 silver badges19 bronze badges
Add a ment  | 

4 Answers 4

Reset to default 1

As I know there is no need to implement touch events to achieve what you want. You can use mon click event. It will be emulated by the browser of the device.

Sounds like a ghost click, have a read here http://code.google./mobile/articles/fast_buttons.html

Try this js fiddle code.It works in all major browsers and all touch devices at time..

http://jsfiddle/vecny/

Just use the change event instead of the touchstart. It should be working in a desktop browser and a touch browser too.

发布评论

评论列表(0)

  1. 暂无评论