我正在尝试动画一组图像,以便在第一次单击时单独移动300px,再次单击时将300px左移回到起始位置。
我现在所拥有的不起作用。所以它是A)我的语法错误或B)我的图像实际上没有以5px渲染。
编辑:这个小提琴现在用正确的代码更新
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<style type="text/css">
#wrapper {
width: 80em;
}
.image {
width: 10em;
height: 10em;
display: block;
position: relative;
left:5px;
}
</style>
<script type="text/javascript">
$(document).ready(function() {
$(".image").click(function() {
if ($('this').css('left') =='5px') {
$(".image").animate({"right": "300px"},3000);
else
$(".image").animate({"left": "300px"},3000);
}
});
});
</script>
</head>
<body>
<div id="wrapper">
<section id="gallery">
<img id="avery" class="image" src='images/OAI.jpg' alt= "On Avery Island Album Art">
<img id="overthesea" class="image" src='images/ITAOTS.jpg' alt="In the Aeroplane Over the Sea album art">
<img id="beauty" class="image" src='images/beauty.jpg' alt="Beauty Demo Album Art">
<img id="everthingIs" class="image" src='images/everythingis.jpg' alt="Eveything Is EP Album Art">
</section>
</div>
</body>
</html>
答案 0 :(得分:1)
试试这个:
$(document).ready(function () {
$(".image").click(function () {
var th = $(this);
if ($(th).css('left') == '5px') {
console.log("ret");
$(th).animate({
"left": "300px"
}, 3000);
} else {
console.log("sdffsdsff");
$(th).animate({
"left": "5px"
}, 3000);
}
});
});
答案 1 :(得分:1)
您必须更改$('this')
的{{1}},元素$(this)
始终没有引号。
问候。