javascript - 如何使用 jquery animate 来回移动多个元素

标签 javascript jquery html css

我一直在研究以下代码,以便来回移动 div 但是当切换 div 时似乎存在问题,一旦单击一个元素,它就会切换但它会影响何时单击下一个元素.任何关于使这个元素来回平等地切换,并且只向左或向右一步的建议。 这是我的 fiddle https://jsfiddle.net/z3L8wbt6/

var move = 200;
$('#main div').click(function(){
    $(this).animate({
        left: "+="+move
    }, 200);
    move =-move;
});

最佳答案

使用 jQuery 函数 addClassremoveClasshasClass,我创建了一个简单的 if/else 语句来控制每个 div 独立于其他 div 移动。

if ($(this).hasClass("moved")) {
    move = -200;
    $(this).removeClass("moved");
} else {
    move = 200;
    $(this).addClass("moved");
}
$(this).animate({
   left: "+=" + move
}, 200);

JSFiddle

关于javascript - 如何使用 jquery animate 来回移动多个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37284057/

相关文章:

javascript - jQuery 自动完成过滤表的输入字段

javascript - jQuery删除数组中的元素

css - 如何使 html5 视频海报图像透明以在视频未播放时看到背景图像

javascript - 失去焦点时提交表单

html - 使用 libxml SAX 解析 HTML 片段

javascript - 当 AngularJs 中数字输入非法时,为什么绑定(bind)到 null 不起作用

jquery - 我的 "view by category"jquery 代码可以缩短或改进吗?

javascript - 从对象返回数据并通过 AngularJS 在 <ul> 中显示

javascript - JavaScript 中的 Number() 和 ToNumber() 有什么区别?

javascript - 我不知道为什么我会得到这个,如果它是根据 React 手册的话