我无法弄清楚为什么这不给我一个动画。它像它应该的那样进入页面顶部,但没有动画。有人可以帮我找出原因吗?
这里是id javascript代码
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript">
$(document).ready(function() {
$('.scrollup').click(function(){
$("html, body").animate({ scrollTop: target_top }, 600);
return false;
});
});
</script>
</head>
<body id="top">
这是我需要执行滚动的链接。
<td><a href="#top" class="scrollup">Back to Top</a></td>
再次,它会转到页面顶部,但没有动画。
这里编辑的是整个html文件。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Home</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<link href='http://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700' rel='stylesheet' type='text/css'>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript">
$(document).ready(function() {
$('.scrollup').click(function(){
$("html, body").animate({ scrollTop: 0 }, 600);
return false;
});
});
</script>
</head>
<body id="top">
<div id="header">
<div class="container">
<div id="title">Name</div>
<div id="tagline">Web Designer + Programmer</div>
<div id="navbar">
<table>
<tbody>
<tr>
<td><a href="#services">Services</a></td><td><a href="#about">About</a></td><td><a href="#contact">Contact</a></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div id="services">
<div class="container">
<div id="servicescontent"></div>
</div>
</div>
<div id="about">
<div class="container">
<div id="aboutcontent"></div>
</div>
</div>
<div id="services2">
<div class="container">
<div id="services2content"></div>
</div>
</div>
<div id="contact">
<div class="container">
<div id="contactinfo"></div>
</div>
</div>
<div id="footer">
<div class="container">
<div id="copyright">Copyright 2013</div>
<div id="footernavbar">
<table style="font-size: 16px;">
<tbody>
<tr>
<td><a href="#about">About</a></td><td><a href="#services">Services</a></td><td><a href="#top" class="scrollup">Back to Top</a></td>
</tr>
</tbody>
</table>
</div></div>
</div>
</div>
</body>
</html>
答案 0 :(得分:3)
它不是target_top,它是0
$("html, body").animate({ scrollTop: 0 }, "slow");
这应该可以解决问题。
答案 1 :(得分:2)
@skidadon是正确的,0可能会解决它。但是你也有一些格式不正确的脚本标签。您需要一个单独的标记用于Jquery,另一个标记用于您正在运行的代码。在事件处理程序的顶部使用event.preventDefault()
也可能有所帮助。这是对代码的简单编辑:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.scrollup').click(function(event){
event.preventDefault();
$("html, body").animate({ scrollTop: 0 }, 600);
});
});
</script>
</head>
<body id="top">
<div style="height: 900px">
Some content
</div>
<div>
<a href="#" class="scrollup">go to top</a>
</div>
</body>
</html>
希望有所帮助。