0

我目前正在尝试制作一个按钮,该按钮将用户带回页面顶部,但具有动画效果。单击按钮时使页面向上滚动到顶部。我在这里搜索并找到了这个..

我试图使用以下方法制作一个JSfiddle ...

CSS

html {
margin:0;
padding:0;
height:2000px;
}

body {
height:2000px;   
}

#blue-box {
position:fixed;
width:100px;
height:70px;
margin-left:0px;
margin-top:50px;
background-color:blue;     
}

#blue-box h1{
font-family:Constantia;
font-size:20px;
text-align:center;
margin-top:5px;
color:#FFFFFF;
}

HTML

<div id="blue-box">
<h1>Back To Top</h1>
</div>

JavaScript

$(document).ready(function() {
var away = false;

$('#blue-box').click(function() {
$("html, body").animate({scrollTop: 0}, 500);
});

不幸的是,这似乎不起作用,我想知道我是否遗漏了什么或做了一些明显错误的事情?

4

3 回答 3

5

您在});脚本末尾缺少 a 。添加它可以解决您的问题

$(document).ready(function() {
    var away = false;

    $('#blue-box').click(function() {
        $("html, body").animate({scrollTop: 0}, 500);
    });
});  // <-- Here.

这是为什么正确缩进代码很重要的一个很好的例子。它使这种错误更加难以错过。

于 2012-01-20T19:31:25.350 回答
2

你忘了关闭你的 $(document).ready

http://jsfiddle.net/HX3ww/3/

于 2012-01-20T19:35:01.593 回答
0

这也是一个细微的变化,其中按钮仅在您开始向下滚动页面时淡入,并在您返回页面顶部时消失http://jsfiddle.net/b4M66/

jQuery:

$(function() {
    $(window).scroll(function() {
        if($(this).scrollTop() != 0) {
            $('#toTop').fadeIn();    
        } else {
            $('#toTop').fadeOut();
        }
    });

    $('#toTop').click(function() {
        $('body,html').animate({scrollTop:0},800);
    });    
});​

CSS:

#toTop { position: fixed; bottom: 50px; right: 30px; width: 84px; background-color: #CCC; cursor: pointer; display: none; }​

HTML:

<div id="toTop">Back to Top</div>​
于 2012-04-13T13:13:45.640 回答