jQuery选项卡隐藏/显示面板以及选项卡背景更改

时间:2013-04-27 16:33:50

标签: jquery button tabs toggle panels

我尝试了所有我知道的东西(并不是因为我是javascript / jquery的新手)。

我有两个按钮A和B.点击时每个按钮显示/隐藏(切换)相应的B内容。一次只有一个按钮可以处于按下状态并且显示内容,因此如果单击A,如果B按钮及其内容处于活动状态,则A按钮进入按下状态,A内容显示,B按钮进入未按下状态, B内容隐藏。 “按下状态”是指不同的背景颜色。此外,如果仅按下A按钮并且其内容可见,如果我再次按下它,A按钮将变为未按下状态,并且其内容隐藏,对于B也是如此。

代码吼叫它是一团糟我觉得,我真的尝试了一切,但js和jquery不是我的东西..

有谁可以告诉我如何使这项工作?非常感谢你!..

$(function() {
                $('#login').click(function() {
                    $('.login').slideToggle('slow');
                    $('#login').toggleClass('btn_on');
                    $("#register:visible").toggleClass("btn_off");
                    $('.register:visible').slideToggle('slow');

                    return false;
                });

                $('#register').click(function() {
                    $('.register').slideToggle('slow');
                    $('#register').toggleClass('btn_on');
                    $("#login:visible").toggleClass("btn_off");
                    $('.login:visible').slideToggle('slow');
                    return false;
                });

            });

1 个答案:

答案 0 :(得分:1)

试试这个:jsfiddle

CSS:

.press
{
background-color:green;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#input_text
{
background-color:black;
color:white;
font-weight:bold;
width:300px;
height:100px;
}

HTML:

<input type='button' id='but_a' class='normal' value='button A' />
<input type='button' id='but_b' class='normal' value='button B' />

<br />
<br />
<div id='input_text'></div>

Jquery的:

$('#input_text').hide()

var textim = new Array();
    textim['but_a'] = 'button A text is now displayed';
    textim['but_b'] = 'button B text is now displayed';

$('.normal').click(function() {
    if($(this).hasClass('press'))
    {
        $(this).removeClass('press');
        $('#input_text').slideUp('slow', function(){  $('#input_text').empty(); });
    }
    else
    {
        $('.normal').removeClass('press');
        $(this).addClass('press');
            var idd = $(this).attr('id');
            $('#input_text').empty();
            $('#input_text').slideDown('slow', function() {  $('#input_text').text(textim[idd]); } );

    }
});

玩得开心......

修改

请注意 - 数组( textim )键应设置为您要触发的按钮的相同ID。