2015-04-02 53 views
0

你好我使用小提琴连结的同时移动一个格向上方向和第二个div在向下的方向M。jquery的两列滚动效果

对于左侧立柱其工作正常,但我要为右列

相同的功能,我使用这个链接

[example][1] 

回答

0

只是做正确的山坳你用左手做了相同的:

$("#right").on("scroll", function() { 
    var scrolledleft = parseInt($("#right").scrollTop()) * -1; 
    console.log(scrolledleft + scrolledright) 
    $("#left").scrollTop(scrolledleft + scrolledright) 
}); 

http://jsfiddle.net/noh1jogv/

编辑:火狐似乎使用scrollTop编程时触发scroll事件。这意味着,在左div滚动在右div,反之亦然触发scroll。为了避免这种使用额外varialbe preventEvent

var preventEvent = false; 
// Add event listener for scrolling 
$("#left").on("scroll", function (e) { 
    if(preventEvent) { 
     preventEvent = false; 
     return; 
    } 
    preventEvent = true; 
    var scrolledleft = parseInt($("#left").scrollTop()) * -1; 
    $("#right").scrollTop(scrolledleft + scrolledright); 
}); 

// Add event listener for scrolling 
$("#right").on("scroll", function (e) { 
    if(preventEvent) { 
     preventEvent = false; 
     return; 
    } 
    preventEvent = true; 
    var scrolledleft = parseInt($("#right").scrollTop()) * -1; 
    $("#left").scrollTop(scrolledleft + scrolledright) 
}); 

http://jsfiddle.net/noh1jogv/2/

+0

我有同样的做,但滚动在这种情况下 – 2015-04-02 09:57:48

+0

滞销我在Chrome和IE浏览器进行了测试。它对我来说速度快,流畅。 – 2015-04-02 10:07:47

+0

我在Mozilla测试。它缓慢的工作对我来说 – 2015-04-02 10:19:18