dav*_*ave 6 jquery scroll scrollto hashtag
我正在制作一个单页网站,顶部有经典导航.现在我将链接设置为哈希标记,以便在页面中导航:
<nav>
<a href="#about">About</a>
</nav>
...
<section id="about">...</section>
Run Code Online (Sandbox Code Playgroud)
显然,这是有效的,但跳转到约一节是即时的,而不是渐进的.我正在寻找一个非常简单的实现,以便逐步过渡.我不想要任何幻想.没有轴,偏移或任何其他选项.我只是希望滚动过渡是渐进的.我想要的唯一设置是完成滚动所需的时间.另外,我想对我的标记几乎没有任何更改.我看过几个javascript插件,要求你使用锚标签来设置html文档中的位置 - 我不希望这样.这个网站看起来很有前途,但我不知道如何设置它.没有演示,所以我看不到如何设置它.我在Javascript中不是那么有文化.此外,jQuery 的ScrollTo插件太复杂了.我愿意使用一个有很多选项的插件,但我只是不希望这些选项阻止我弄清楚如何设置它.
任何帮助将非常感激!
jac*_*per 16
这是我发现它的最好方法 - 它只使用普通的锚点,但扩展了它们的功能
$('a').click(function() {
var elementClicked = $(this).attr("href");
var destination = $(elementClicked).offset().top;
$("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination-15}, 500);
});
Run Code Online (Sandbox Code Playgroud)
这是一个实例
我使用直接jquery来做到这一点.
我有一个像这样的链接 - >
<a href="1" class="scrolling">Go to 1</a>
Run Code Online (Sandbox Code Playgroud)
然后使用jquery它会向下滚动到另一个id为"1"的锚点
$("a.scrolling").click(function(e) {
e.preventDefault();
goToByScroll($(this).attr("href"));
});
function goToByScroll(id) {
$('html,body').animate({scrollTop: $("#"+id).offset().top},'slow');
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10642 次 |
| 最近记录: |