javascript - 根据值更改 jquery.animate

标签 javascript jquery jquery-animate

当点击button.btn时,div.img-box会随着动画移动。
我想根据 div.img-box 的位置更改动画。

首先,我单击按钮,它会集体移动。
第二次单击时,margin-right 现在为 10px 的图像不会移动。
我有这个代码。

js

$(function(){
    var mr = parseInt($('.img-box').css('margin-right'), 10);
    $(".btn").click(function(){
        if (mr == 10) {
            $(".img-box").animate( { marginRight: '300px' }, 'slow' );
        } else {
            $(".img-box").animate( { marginRight: '10px' }, 'slow' );
        };
    });
});

html

<button class="btn"></button>
<div class="img-box"><img src="xxx.png"></div>

CSS

.img-box{
    float: right;
    width: 250px;
    height: 350px;
    margin: 200px 25%;
}

如何修复它?

最佳答案

您需要将 var mr = parseInt($('.img-box').css('margin-right'), 10); 放入 click() 函数。

$(function(){
    $(".btn").click(function(){
        var mr = parseInt($('.img-box').css('margin-right'), 10);
        if (mr == 10) {
            $(".img-box").animate( { marginRight: '300px' }, 'slow' );
        } else {
            $(".img-box").animate( { marginRight: '10px' }, 'slow' );
        };
    });
});

JSFiddle

关于javascript - 根据值更改 jquery.animate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25853572/

相关文章:

Jquery Ajax,从 mvc.net Controller 返回成功/错误

javascript - jQuery 图像交换和动画不起作用

javascript - Material UI v1 with Redux - 如何导出

javascript - 在 Vite 的 Javascript 和 HTML 中用破折号 "-"替换空格

javascript - 如何清除调用自身的函数内部的间隔javascript

javascript - 如何降低Animate circles js的速度

javascript - jQuery 在鼠标按下时平滑滚动

javascript - 使用 jQuery 过滤两种输入类型

javascript - 如何在没有浏览器检测的情况下识别 "input"事件中的错误行为?

javascript - 单击按钮时尝试显示三个选择下拉列表的值