两个元素,一个溢出隐藏,而另一个寄存器滚动两个元素?

时间:2014-01-12 14:30:16

标签: android jquery css

主要用于手持式触控设备。

我正在使用jQuery库和Hammer.js来注册触摸事件。

我有2个元素,一个侧边栏和一个内容。内容位于菜单顶部,您可以在内容上滑动以显示侧边栏。

当您滑动内容时,我会应用overflow:hidden;,只有在侧边栏上才可以垂直滚动。

现在尝试滚动内容无效,但我想将滚动事件转移到侧边栏。

因此,当有人试图滚动内容时,侧边栏会移动,相反?

现在这是我正在使用的功能:

jQuery(document).ready(function($){
     var element = document.getElementById("wrapper");
     var hammertime = Hammer(element, {
        swipe_velocity: 0.1
    }).on('swiperight',function(){
         $(this).addClass('slidein');
    }).on('swipeleft',function(){
         $(this).removeClass('slidein');
    });;
});

1 个答案:

答案 0 :(得分:0)

这样做了,你必须使用hammer.js,抓住deltaY位置并在侧栏.scrollTop位置使用它。

jQuery(document).ready(function($){
     var element = document.getElementById("wrapper");
     var posX=0, posY=0;
     var hammertime = Hammer(element, {
        drag: true,
        swipe_velocity: 0.1,
        drag_block_vertical:true
    }).on('swiperight',function(){
         $(this).addClass('slidein');
    }).on('swipeleft',function(){
         $(this).removeClass('slidein');
    }).on('drag',function(ev){
         posX = ev.gesture.deltaX;
         posY = ev.gesture.deltaY;
         $('.snap-drawer').scrollTop(posY);
    });
});