【发布时间】:2014-05-12 05:53:43
【问题描述】:
我有 10 个元素(图像)的此功能,我需要单击每个元素并增长一点,然后当我单击另一个元素以调整其原始尺寸并增长我单击的最后一个元素时。以下是一些代码:
编辑: http://jsfiddle.net/MruMR/
var Answers = new Array();
var growing = true;
$(Answers).click(function(e){
if(growing)
$(e.target).animate({width:'400px'}, 500, function(){
});
else
$(e.target).animate({width:'360px'}, 500, function(){
});
growing=!growing;
});
for (var i = 0; i < 10; i++) {
var elemente = document.getElementById("simbol" + i);
Answers.push(elemente);
}
【问题讨论】:
-
请告诉我们您的尝试,如果可能,请创建一个 JSFiddle,以便我们共同制定解决方案。
-
你需要在数组填充之后绑定点击事件,而不是之前!
-
@martincarlin87 这里 OP 正在将一个 DOM 节点数组解析为一个 jquery 对象,这肯定不是更好的方法
-
我添加了一个小提琴
-
也许只是避免使用全局变量:jsfiddle.net/MruMR/1 但实际上,您的代码应该是这样的:
$('.simbol').click(function (e) { this.growing = !this.growing; $(e.target).animate({ width: this.growing ? 180 : 155 }, 500); });这就是您所需要的! jsfiddle.net/MruMR/2
标签: javascript jquery jquery-animate