我有一个li列表,当点击其中一个时,会触发动画。然而,我的最后一个动画不起作用。它应该修改被点击的li的大小:$('#wrapper li').index(this).css({'width': '200px'});
请注意,如果我删除“.index(this)
”它正在处理所有li,但这又不是我想要的。这里是完整代码。非常感谢您的回复。干杯。马克。
$('#wrapper li').click(function () {
//Here is set my varaibles
$('#wrapper li').slice(startLi, endLi).animate({
"left": '-=' + leftDistance
}, "fast", function () {
$('#wrapper li').slice(indexLi + 1, endLi).stop().animate({
"left": "+=225px"
}, "slow", function () {
$('#wrapper li').index(this).css({'width': '200px'});
});
});
});
答案 0 :(得分:0)
应该修改点击的li的大小
你可以通过缓存this
的外部值(在事件处理程序中引用被点击的元素)并在稍后的动画函数中使用它来使其工作:
$('#wrapper li').click(function () {
var self = this;
//Here is set my varaibles
$('#wrapper li').slice(startLi, endLi).animate({
"left": '-=' + leftDistance
}, "fast", function () {
$('#wrapper li').slice(indexLi + 1, endLi).stop().animate({
"left": "+=225px"
}, "slow", function () {
$(self).css({'width': '200px'});
});
});
});