获取窗口.scrollTo(0, 0);去工作
Getting window.scrollTo(0, 0); to work
我知道这个问题可能被问了一千次并解决了,但我需要关于我的具体情况的建议。
我已经在我的网站上设置了几个锚点,我正在使用jquery在它们之间平滑滚动。我一直在使用#top
锚点滚动到页面顶部,它可以工作。但是,问题是,如果我让按钮滚动到 #top 它将不会滚动到页面的绝对顶部(因为我无法在网页上将锚点设置得足够高)。
我试图让它使用 window.scrollTo(0, 0);
命令工作,但我不知道如何在仍然可以滚动到锚点的同时让它工作。
我使用以下jQuery进行锚点滚动:
$(document).ready(function(){
$('a[href^="#"]').on('click',function (e) {
e.preventDefault();
var target = this.hash;
var $target = $(target);
$('html, body').stop().animate({
'scrollTop': $target.offset().top
}, 900, 'swing', function () {
window.location.hash = target;
});
});
});
使用此 HTML:
<a href="#top">
<img alt="" heigth="60" onmouseout="this.src='http://i.imgur.com/0JvWWER.png'" onmouseover="this.src='http://i.imgur.com/Ow7CVn0.png'" src="http://i.imgur.com/0JvWWER.png" width="60" />
</a>
现在,如何使window.scrollTo(0,0);
工作以及如何在 html 正文中实现它?
提前谢谢。
正如这里所说的那样,在这里做一个小的改变:
$(document).ready(function(){
$('a[href^="#"]').on('click',function (e) {
e.preventDefault();
var target = $(this).attr("href");
$('html, body').stop().animate({
// Change here...
'scrollTop': ((target === '#top') ? 0 : $(target).offset().top)
}, 900, 'swing', function () {
window.location.hash = target;
});
});
});
相关文章:
- Javascript:selenium Web驱动程序isDisplayed()不工作
- jQuery UI自动完成突然停止工作
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- JavaScript打印功能使日历停止工作
- Javascript.getHours()工作不正常
- Facebook scrollTo在iframe中不工作
- Jquery scrollTo没有'不能在Firefox上工作
- 让简单的Javascript / jQuery工作(Ariel Flesler的ScrollTo)
- 获取窗口.scrollTo(0, 0);去工作
- 在Div中更改innerHtml时,ScrollTop和ScrollTo不工作
- scrollTo.js不能与锚中有空格的Firefox一起工作
- jQuery scrollTo在Chrome中工作,但不是FF
- 当想要滚动到顶部时,scrollTo不工作
- 窗口.scrollTo无法在Internet Explorer 11中工作
- jQuery.ScrollTo和scroll event不能正常工作
- scrollTo JS插件在iPad上不工作-闪烁
- scrollTo Jquery将不工作,我错过了什么
- scroller.scrollTo在Sencha Touch don'如果之前没有手动启动,则无法工作
- ScrollTop和ScrollTo不能在ipad上工作