2013-03-27 157 views
0

我試圖動畫一個scrolltop動作,當我點擊返回頂部按鈕時,它會回到頂部而沒有動畫,這是CSS參數錯誤嗎?動畫不可用的動畫滾動事件

這是腳本:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script src="js/jquery.sticky.js"></script> 
<script type="text/javascript"></script> 
<script> 
    $(window).scroll(function() { 
     if($(this).scrollTop() > 990) { 
      $('.scrollup').fadeIn(600) 
     } else { 
      $('.scrollup').fadeOut(300) 
     } 
    }); 
    $('.scrollup').click(function() { 
     $('html, body').animate({ 
      scrollTop: 0 
     }, 600); 
     return false; 
    }); 
</script> 
<div id="toparrow"> 
    <a href="#" class="scrollup">Scroll</a> 
</div> 

和CSS元素:

#toparrow { 

} 
.scrollup { 
    width:72px; 
    height:45px; 
    top:240px; 
    left:927px; 
    position:absolute; 
    background: url('../img/generic/toparrow.png') bottom; 
    display:none; 
    text-indent:-9999px; 
} 

和網站:http://www.citrontech.com/services

+0

哪來的HTML? – egig 2013-03-27 02:26:15

+0

對不起:

JohnDoeTheFifth 2013-03-27 02:27:17

+1

如果您使用錨標記,則需要preventDefault(),或者您可以使用''。似乎你得到了答案。 – egig 2013-03-27 02:30:12

回答

0

因爲按鈕與錨href="#"這意味着去th e頂部。您可以使用preventDefault更改此瀏覽器行爲。

$('.scrollup').click(function(e){ 
    e.preventDefault(); 
    $('html, body').animate({ scrollTop: 0 }, 600); 
    return false; 
}); 

更多event.preventDefaulthttp://api.jquery.com/event.preventDefault/

+0

仍然是同樣的問題,但即時通訊讀取preventDefault,歡呼 – JohnDoeTheFifth 2013-03-27 02:34:08

+0

我試圖在您的網站上的控制檯沒有問題... – LotusH 2013-03-27 02:39:54

+0

奇怪,試圖在所有瀏覽器,並沒有動畫。 – JohnDoeTheFifth 2013-03-27 02:44:22