Javascript 在这种情况下如何切换动画?

Javascript 在这种情况下如何切换动画?,javascript,jquery,Javascript,Jquery,我想这样做。当我单击“关于”时,将显示左侧:0,html关闭。 当我再次单击时,将显示左侧:-100%,html关于。 我怎样才能意识到这一点 var about = $('ul.about > li > span.activebtn'); var willshow = $('div.willshow'); about.on('click', function(){ willshow.animate({ 'left': '0'

我想这样做。当我单击“关于”时,将显示左侧:0,html关闭。 当我再次单击时,将显示左侧:-100%,html关于。 我怎样才能意识到这一点

var about = $('ul.about > li > span.activebtn');
var willshow = $('div.willshow');

about.on('click', function(){

        willshow.animate({
            'left': '0'
        }, 500);
        about.html('close');

        if($(this).html() == 'close'){
            about.click(function(){
                willshow.animate({
                    'left': '-100%'
                }, 500);
                about.html('about');
            });
        }

    });

切换时,可以使用元素的当前状态设置下一个值。试试这个:

var $about = $('ul.about > li > span.activebtn');
var $willshow = $('div.willshow');

$about.on('click', function() {
    $willshow.animate({ 
        left: $willshow.css('left') == '0px' ? '-100%' : 0
    }, 500);
    $about.text(function(i, t) {
        return t == 'close' ? 'about' : 'close';
    });
});

切换时,可以使用元素的当前状态设置下一个值。试试这个:

var $about = $('ul.about > li > span.activebtn');
var $willshow = $('div.willshow');

$about.on('click', function() {
    $willshow.animate({ 
        left: $willshow.css('left') == '0px' ? '-100%' : 0
    }, 500);
    $about.text(function(i, t) {
        return t == 'close' ? 'about' : 'close';
    });
});

文本是
切换
ing。但是css left并没有被切换。你是对的,用一个工作示例更新答案,让你成为最好的。非常感谢XD!!!!我不知道这条路。我向你学习坦克下一步是切换。但是css left并没有被切换。你是对的,用一个工作示例更新答案,让你成为最好的。非常感谢XD!!!!我不知道这条路。我向你学习坦克