Javascript Events are not working in Tablet-pc?

流过昼夜 提交于 2019-12-30 19:49:10

问题


I have developed a web application in asp.net 3.5. It is consuming lot of javascript/JQuery events and working properly in normal browser in pc, but my client is saying that these are not working in tablet-pc/android and IPad . Like I have a dropdownlist in which I am firing keypress and mouse click events in javascript, and these are perfectly working in normal browsers, I need to be in working form all these in IPads and android tablet-pcs.


回答1:


The click events won't work on the iPad as it is touch screen - click vs touch I guess. Have you considered using JQueryMobile rather than JQuery? I is optimised for touch devices - as it states on the very front page of the site.

Rather than using click it has a whole host of events you can hook into i.e. tap, swipe, taphold etc... It would be easy enough to hook the same function into a click and a tap event i.e.

('myelement').bind('click', function(event){
   myClickFunction();   
});

('myelement').bind('tap', function(event){
   myClickFunction();   
});

There are possibly (almost certainly) more elegant ways to do this - but that's just a start really.




回答2:


There are touch events for a touch screen device:

touchstart: a finger is placed on a DOM element.
touchmove: a finger is dragged along a DOM element.
touchend: a finger is removed from a DOM element.

Maybe you want to try working with those. That being said, it is good to use events like change (or onchange inline with the element) for a drop down list because it is will work no matter what changes it (keyboard, mouse event or touch event).

Here is a resource to learn more.




回答3:


You can use a combination and try touchstart instead of tap

('myelement').bind('touchstart click', function(event){
   myClickFunction();   
});


来源:https://stackoverflow.com/questions/8939136/javascript-events-are-not-working-in-tablet-pc

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!