Mousedown活动与ipad / iphone兼容? - jQuery Mobile

时间:2010-12-15 10:25:00

标签: jquery jquery-mobile

我在jquery中写了一个小卷轴。滚动条似乎在PC和Mac上完美运行。但它不适用于触摸设备。

我想这是因为调用了mousedown属性。如何在PC和触摸屏设备上完成这项工作?

由于

$('.scroll-nav-up, .scroll-nav-down').live('click', function(){
    $('.scroller-wrap').stop();
    return false;
});


$('.scroll-nav-up').live('mousedown', function(){

    $(this).closest('.item').find('.scroller-wrap').animate({
        top: -($(this).closest('.item').find('.scroller-wrap').height() - 250)
    }, 800);

});


$('.scroll-nav-down').live('mousedown', function(){

    $(this).closest('.item').find('.scroller-wrap').animate({
        top: 0
    }, 800);

});

2 个答案:

答案 0 :(得分:1)

如果您正在使用jquery mobile尝试处理其新活动taptaphold

http://jquerymobile.com/demos/1.0a2/#docs/api/events.html

我无法测试它,所以这只是一个想法(我不确定我是否理解你的应用程序的功能),但你可以尝试更改click to mouseup事件。

答案 1 :(得分:1)

没有特别的发现,所以此刻我正在使用2个脚本。第一个脚本标识了Alastair Campbell在Detecting touch-based browsing上编写的触摸屏设备。

function isTouchDevice() {
   var el = document.createElement('div');
   el.setAttribute('ongesturestart', 'return;');
   if(typeof el.ongesturestart == "function"){
      return true;
   }else {
      return false
   }
}

然后将mousedown事件用于常规浏览器,并将tap事件用于触摸屏设备。

P.S - 同时使用jQuery和jQuery Mobile