这是我的HTML文档。我正在尝试使用jQuery animate()
将我的一个标题工作到另一个位置,并且由于某种原因我无法解决它。 fadeOut
和fadeIn
工作,所以我知道我的JavaScript href正在运行。此外,它与未声明文档类型无关。
<html>
<head>
<title>We Hate Treyarch - Let your opinions mean something </title>
<link rel="stylesheet" type="text/css" href="style.css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
$(window).load(function(){
$("#underhead").animate
({top:600px;left:600px;},2000);
$("#underhead").animate
({top:170px;left:165px;},5000);
});
});
</script>
</head>
<body>
<div id="tophead"></div>
<div id="sechead"> </div>
<div id="header">
<h1 id="hye">We <span class="kame"><b>hate</b></span> treyarch</h1>
</div>
<div id="underhead">and so do you...</div>
</body>
</html>
答案 0 :(得分:4)
javascript对象未定义如下:
{top:600px;left:600px;}
就是这样:
{top:"600px", left:"600px"}
这必须是javascript语法,而不是CSS语法。
这应该在javascript错误控制台或控制台窗口中为您描述,无论您使用什么js调试器,因为它是一个javascript语法错误。
此外,没有理由同时使用两者:
$(function(){
里面有这个:
$(window).load(function(){
使用其中一个。我建议只使用jQuery版本,除非你必须等待图像完成加载,在这种情况下只使用window.load版本。
此代码有效:
$(function(){
$("#underhead").animate({top: "600px", left: "600px"}, 2000);
$("#underhead").animate({top: "170px", left: "165px"}, 5000);
});
你可以在这里看到它:http://jsfiddle.net/jfriend00/V23rW/。
答案 1 :(得分:1)
这是正确的动画语法,你的错误。
$('#id').click(function() {
$('.class').animate({
opacity: 0.25,
}, 5000, function() {
});
});