我想在第一次点击时向右滑动div,当它再次点击时,我希望它返回原来的位置
我有以下但是div没有移动,console.log显示在第一次点击时点击了-2。
$('.note-title').click(function(){
console.log("clicked-1");
$(this).animate({'margin-left':'200px'},200);
},function(){
console.log("clicked-2");
$(this).animate({'margin-left':'0px'},200);
});
答案 0 :(得分:4)
如何简单地使用布尔标志?
var clickOne = true;
$('.note-title').click(function(){
if (clickOne){
$(this).animate({'margin-left':'200px'},200);
}else{
$(this).animate({'margin-left':'0px'},200);
}
clickOne = !clickOne;
}
每次单击都会切换标志的值并执行条件表达式的不同部分。
答案 1 :(得分:1)
注意此方法为depreciated。你应该使用Lix的解决方案。
使用.toggle
$('.note-title').toggle(function(){
console.log("clicked-1");
$(this).animate({'margin-left':'200px'},200);
},function(){
console.log("clicked-2");
$(this).animate({'margin-left':'0px'},200);
});
使用.click
,所有传入的回调都会在每次点击时触发,一个接一个。