jQuery - >取消选中一个方框

时间:2014-02-07 18:56:50

标签: javascript jquery

我有一个可以穿多件防弹衣的士兵。您可以轻松选择它们,但如果单击所选的一个,则必须取消选中并取消选中该框。有没有人知道如何解决这个问题?一个小提琴的例子很可爱。

我的小提琴:http://jsfiddle.net/4R3TS/

$('#vest1').click(function () {
    $('.block1').show();
    $('.block2').hide();
    $('.vest').addClass('hide');
    $('.vest1').removeClass('hide');
    $('.vest1').css({
        position: 'relative',
        top: '-105px',
        left: '12px',
    });
    $('#right1').fadeIn();
    $('#right2').fadeOut();
});


$('#vest2').click(function () {
    $('.block1, .block2').show();
    $('.vest').addClass('hide');
    $('.vest2').removeClass('hide');
    $('.vest2').css({
        position: 'relative',
        top: '-210px',
        left: '12px',
    });
    $('#right1').fadeOut();
    $('#right2').fadeIn();
});

2 个答案:

答案 0 :(得分:2)

取消选中id="box"

$('#box').prop('checked', false);

答案 1 :(得分:0)

hideI会建议将图像放在css中。我不明白为什么每次使用jQuery都要定位它们。你可以做一次。

我在代码中找不到#right1和#right2。这可能是旧代码还是仍在使用?它也不在小提琴中。

单击按钮时,我看不到任何要检查的内容。如果你想添加它,可以通过向函数showVest()和hideVest()添加代码来轻松完成。

(function(){
    var selectedVest;

    $('#vest1').click(function () {
        if(selectedVest === 'vest1') {
            selectedVest = '';
            selectedVest();
        } else {
            selectedVest = 'vest1';
            showVest ('vest1');
        }
    });


    $('#vest2').click(function () {
        if(selectedVest === 'vest2') {
            selectedVest = '';
            hideVest ('vest2');
        } else {
            selectedVest = 'vest2';
            showVest ('vest2');
        }
    });

    var showVest = function ( vest ) {
        if (vest === 'vest1') {
            $('.block1').show();
            $('.block2').hide();
        }
        if (vest === 'vest2') $('.block1, .block2').show();

        $('.vest').addClass('hide');
        $('.' + vest).removeClass('hide');

    };

    var hideVest = function ( ) {
        $('.block1, .block2').hide();
        $('.vest').addClass('hide');

    };
});

此致