Nrc*_*Nrc 18 jquery jquery-animate
每次我点击div"蓝色"它移动100px.它工作得很好,有一天我意识到它停止了工作.在尝试了很多东西之后,我发现问题出在最新版本的jQuery 1.10现在它只移动100px一次.这是因为它忽略了+ =.我找不到它是否被弃用?如果是这样,现在正是这样做的正确方法是什么?
你可以看到它在这里工作:http://jsfiddle.net/RB4eJ/1/
(这是在jQuery 1.9.1中工作.但它不在1.10)
$(function(){
$(".blue").click(function() {
$(".blue").animate({left: "+=100"}, 500)
});
})
Run Code Online (Sandbox Code Playgroud)
如果它是一个bug我希望他们修复它因为它很有用.但是现在你可以这样做:
$(".blue").click(function() {
var new_left = +$(this).css("left").replace("px", "") + 100;
$(".blue").animate({left: new_left + "px"}, 500)
});
Run Code Online (Sandbox Code Playgroud)
或者@adeneo建议:
$(".blue").click(function() {
$(this).animate({left: $(this).position().left+100}, 500);
});
Run Code Online (Sandbox Code Playgroud)