Javascript jQueryrotate if-else循环问题

Javascript jQueryrotate if-else循环问题,javascript,jquery,jquery-plugins,Javascript,Jquery,Jquery Plugins,我正在尝试设置一个元素,该元素在单击时将旋转180度,然后在再次单击时再次旋转。我使用的代码如下。显然是不对的,我觉得我需要使用for循环 $('#hodgepodge').click(function(){ var i = 0; if (i < 1) { $('#hodgepodge').rotate(180); var i = 1; } else { $('#hodgepodge').rotate(0);

我正在尝试设置一个元素,该元素在单击时将旋转180度,然后在再次单击时再次旋转。我使用的代码如下。显然是不对的,我觉得我需要使用for循环

$('#hodgepodge').click(function(){
    var i = 0;
    if (i < 1) {
        $('#hodgepodge').rotate(180);
        var i = 1;
    } else {
        $('#hodgepodge').rotate(0);
        var i = 0;
    }
    });
$(“#大杂烩”)。单击(函数(){
var i=0;
if(i<1){
$('大杂烩')。旋转(180);
var i=1;
}否则{
$('大杂烩')。旋转(0);
var i=0;
}
});

在单击事件之前尝试初始化

var i = 0;
$('#hodgepodge').click(function(){
    if (i < 1) {
        $('#hodgepodge').rotate(180);
        i = 1;
    } else {
        $('#hodgepodge').rotate(0);
        i = 0;
    }
});
var i=0;
$(“#大杂烩”)。单击(函数(){
if(i<1){
$('大杂烩')。旋转(180);
i=1;
}否则{
$('大杂烩')。旋转(0);
i=0;
}
});

在单击事件之前尝试初始化

var i = 0;
$('#hodgepodge').click(function(){
    if (i < 1) {
        $('#hodgepodge').rotate(180);
        i = 1;
    } else {
        $('#hodgepodge').rotate(0);
        i = 0;
    }
});
var i=0;
$(“#大杂烩”)。单击(函数(){
if(i<1){
$('大杂烩')。旋转(180);
i=1;
}否则{
$('大杂烩')。旋转(0);
i=0;
}
});

您可以使用jQuery的
数据()
跟踪状态,然后只需切换它:

$('#hodgepodge').on('click', function(){
    $(this).rotate( !$(this).data('state') ? 180 : 0 );
    $(this).data('state', !$(this).data('state'));
});

您可以使用jQuery的
data()
跟踪状态,然后只需切换它:

$('#hodgepodge').on('click', function(){
    $(this).rotate( !$(this).data('state') ? 180 : 0 );
    $(this).data('state', !$(this).data('state'));
});

我尝试使用I++代替var I=方法,但两种方法都不起作用。我觉得这应该行得通,如果我在if语句中将1设置为0,就会触发第二个。接受对你最有帮助的答案。请看,我也尝试使用I++而不是var I=方法,但两者都不起作用。我觉得这应该行得通,如果我在if语句中将1设置为0,就会触发第二个。接受对你最有帮助的答案。见心烦意乱,在此之前不知道状态。非常感谢您的帮助,效果非常好!精神崩溃了,在这之前不知道状态。非常感谢您的帮助,效果非常好!