Javascript事件在Tablet PC中不起作用?

时间:2012-01-20 09:23:06

标签: jquery android asp.net ipad tablet

我在asp.net 3.5中开发了一个Web应用程序。它正在消耗大量的javascript / JQuery事件,并且在普通的浏览器中正常工作,但我的客户说这些不适用于平板电脑/安卓和iPad。就像我有一个下拉列表,其中我在javascript中触发按键和鼠标点击事件,这些在普通浏览器中完全正常工作,我需要在IPads和Android平板电脑中处理所有这些。

3 个答案:

答案 0 :(得分:4)

点击事件在iPad上不起作用,因为它是触摸屏 - 点击vs触摸我想。您是否考虑过使用JQueryMobile而不是JQuery?我针对触摸设备进行了优化 - 正如它在网站的最前页所述。

而不是使用点击它有一个events you can hook into的整个主机,即点击,滑动,taphold等...将相同的功能挂钩到点击和点击事件就好了。

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

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

有可能(几乎可以肯定)更优雅的方式来做到这一点 - 但这只是一个开始。

答案 1 :(得分:1)

触摸屏设备有触摸事件:

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.

也许您想尝试使用这些。话虽如此,最好使用change(或onchange与元素内联)等事件作为下拉列表,因为它无论发生什么变化都会起作用(键盘,鼠标事件或触摸)事件)。

Here是了解更多信息的资源。

答案 2 :(得分:0)

您可以使用组合并尝试使用touchstart而不是点按

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