【问题标题】:Javascript Div Scroll - Some IssuesJavascript Div Scroll - 一些问题
【发布时间】:2016-01-12 02:51:51
【问题描述】:

我从另一个帖子中复制了这个,不是盲目的,我可以看到它的作用,但我想不出解决问题的方法。我不是很精通 JavaScript,但我可以阅读这个 sn-p。

// The function actually applying the offset
function offsetAnchor() {
    if (location.hash.length !== 0) {
        window.scrollTo(window.scrollX, window.scrollY - 100);
    }
}

// This will capture hash changes while on the page
$(window).on("hashchange", function() {
    offsetAnchor();
});

// This is here so that when you enter the page with a hash,
// it can provide the offset in that case too. Having a timeout
// seems necessary to allow the browser to jump to the anchor first.
window.setTimeout(function() {
    offsetAnchor();
}, 3);

;(function($) {

    $('.swipebox').swipebox();

})(jQuery);

问题是,当我滚动到带有用于锚点的 ID 的 DIV 时,由于我有一个粘性标题,所以我向下滚动得有点太远了。我尝试使用它,因此在更改 DIV 时它会考虑到粘性标题,它不能完全正常工作,但我遇到的主要问题是我将拥有超过 12 个导航 DIV id,并且每次点击其中的任何一个它不再进入 DIV,而是向上滚动 -100 像素。

我基本上需要一个解决方案,它可以滚动到我需要它的上方而不影响我的其余菜单功能,它不必通过 JS 来实现,但这是我可以看到解决方案的唯一可行方式(我'已经尝试只考虑一个 CSS,但边距/填充在这种滚动情况下无济于事)

最后一个细节,当点击导航 div 时,它将滚动到该 div,菜单(粘性标题)将覆盖一些图像和滚动的项目。主要问题:)

如果您想要更好的描述,我可以留下一个链接,我目前正在学习 JS,但由于这是针对客户的,我希望能够及时修复它,非常感谢任何人都可以提供的任何和所有帮助。

谢谢。

【问题讨论】:

  • 你能发布你的整个代码吗?
  • 是的..发布整个代码可能会有所帮助
  • jQuery Scroll to Div的可能重复

标签: javascript jquery html css scroll


【解决方案1】:

this question 中有跳转到某个元素的答案。

如果你想要平滑滚动:look here.

【讨论】:

    猜你喜欢
    • 2011-12-02
    • 2019-09-26
    • 1970-01-01
    • 2014-07-19
    • 1970-01-01
    • 2015-12-26
    • 2013-07-06
    • 1970-01-01
    • 2019-07-26
    相关资源
    最近更新 更多