【问题标题】:Scroll a div based on a draggable element (reversed)基于可拖动元素滚动 div(反向)
【发布时间】:2013-08-07 17:10:22
【问题描述】:

我发现这段代码通过可拖动元素滚动 div。我不太明白发布的答案,我也想反过来做。

原文:Scroll a div based on a draggable element

http://jsfiddle.net/xNLsE/8/

我修改了小提琴并使其在加载时向下滚动,原始答案无需向下滚动内容即可工作。

我添加了这个块让它向下滚动

    //modification
var timeline = $('#timeline');
var tlParent = timeline.parent();
var tlHeight = parseInt(timeline.css("height"));
var tlPHeight = parseInt(tlParent.css("height"));

//scroll down the content on load
var newPos = 0 - (tlHeight - tlPHeight);
timeline.animate({"top":newPos + "px"},800,"linear");
//end modification

我的修改:http://jsfiddle.net/j3toxicat3d/hxBGd/

帮助任何人?谢谢

【问题讨论】:

    标签: jquery jquery-ui draggable


    【解决方案1】:

    嘿,我与这个脚本进行了斗争并让它反向工作 -

    //modification
    var timeline = $('#timeline');
    var tlParent = timeline.parent();
    var tlHeight = timeline.height();
    var tlPHeight = tlParent.height();
    
    //scroll down the content on load
    var lastDirection
    , newPos = tlHeight - tlPHeight;
    $('#timeline_wrapper').animate({scrollTop:newPos + "px"},800,"linear");
    //end modification
    
    
    var $controller = $('#controller')
        , scrollableHeight = $('#timeline').height() - $('#timeline_wrapper').height()
        , draggableWidth = $('#horizontal_control').width() - $controller.width()
        , ratio = scrollableHeight / draggableWidth
        , initialOffset = $controller.offset().left;
    
    $controller.draggable({
        revert: false,
        containment: "parent",
        axis: "x",
        drag: function (event, ui) {
            var distance = ui.offset.left - initialOffset
            , currentPos = $('#timeline_wrapper').scrollTop();
            var direction = ui.position.left;
            (lastDirection < direction) ? $('#timeline_wrapper').scrollTop(currentPos - distance) : $('#timeline_wrapper').scrollTop(currentPos + distance);
            lastDirection = ui.position.left;
        }
    });
    

    我想你会注意到我修改了什么。

    Here is a working jsFiddle Demo

    【讨论】:

    • 感谢您给我一些时间。我将使用您的修改并添加更多内容。如您所见,在原始中,您拖动的 px 量也对应于滚动的级别。我认为这是您的解决方案所缺少的一件事。
    • @Jetoox 嘿,不客气。这变成了一场战斗,我就是不能放弃它,哈哈。我再次编辑了小提琴并修改了答案中的代码。最好必须完全向右滚动才能将文本一直滚动到顶部,反之亦然......我认为你可以从这里处理。
    • 它也是我的战士。如果您愿意,我将整个问题发布为这里的另一个问题是stackoverflow。 stackoverflow.com/questions/18111683/…
    猜你喜欢
    • 2013-08-06
    • 1970-01-01
    • 2011-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-05
    • 2022-01-23
    相关资源
    最近更新 更多