0

我想在我的主 div 上有一个自定义滚动条,它有按钮可以转到 div 的某些部分,但是在使用 flexcroll 插件时锚点似乎不起作用(我知道我正在正确地做锚点,因为当我在那个 div 上禁用 flexcroll 他们工作正常)

他们有什么方法可以用来设置锚点吗?

编辑找到的解决方案:在我想单击的按钮上,我可以将其放在文档中的特定位置 onclick="Wrapper.fleXcroll.setScrollPos(false,0);"

4

1 回答 1

0

我过去使用过这个功能。仅供参考,我对 flexcroll 一无所知,因此未对此进行测试:

var isInt = function(val) {
    return (parseInt(val, 10) == val);
};

var scrollTo = function(node) {
    var pNode = node.parentNode;
    var offset = node.offsetTop - pNode.offsetTop;
    var pHeight = pNode.clientHeight;
    var height = node.clientHeight;
    var scrollOffset = pNode.scrollTop;
    var buffer = 10;
    var scroll = null;

    if (scrollOffset > offset) {
        scroll = offset - buffer;
    } else if (pHeight + scrollOffset < offset + height + buffer) {
        scroll = offset + height + buffer - pHeight;
    }

    if (isInt(scroll)) {
        pNode.scrollTop = scroll;
    }
};

这是纯JS版本。(示例

这是一个 jQuery 版本的示例,它为滚动事件设置动画:jQuery 版本

于 2013-06-14T18:24:14.253 回答