Jquery Animate图像右键单击事件,然后在第二次单击事件时返回到左侧

时间:2013-11-04 08:08:25

标签: javascript jquery html css jquery-animate

我正在尝试动画一组图像,以便在第一次单击时单独移动300px,再次单击时将300px左移回到起始位置。

我现在所拥有的不起作用。所以它是A)我的语法错误或B)我的图像实际上没有以5px渲染。

编辑:这个小提琴现在用正确的代码更新

Jsfiddle Demo

<!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>                 

2 个答案:

答案 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);
        }
    });
});

Fiddle here.

答案 1 :(得分:1)

您必须更改$('this')的{​​{1}},元素$(this)始终没有引号。

问候。