Changing a menu tab's color on click I've got a tab menu and functions that change the tab's color on click, giving the clicked tab a different color from the others. The thing is, when I click one, I give it another background-color easily but I'm also setting all the other tabs background-color.

In my largest menu there are 6 tabs:

document.getElementById('tab1').onclick = changeColor1;
document.getElementById('tab2').onclick = changeColor2;
document.getElementById('tab3').onclick = changeColor3;
document.getElementById('tab4').onclick = changeColor4;
document.getElementById('tab5').onclick = changeColor5;
document.getElementById('tab6').onclick = changeColor6;

function changeColor1() {
    document.getElementById('tab1').style.backgroundColor = "white";
    document.getElementById('tab2').style.backgroundColor = "silver";
    document.getElementById('tab3').style.backgroundColor = "silver";
    document.getElementById('tab4').style.backgroundColor = "silver";
    document.getElementById('tab5').style.backgroundColor = "silver";
    document.getElementById('tab6').style.backgroundColor = "silver";
    return false;
}

function changeColor2() {
    document.getElementById('tab1').style.backgroundColor = "silver";
    document.getElementById('tab2').style.backgroundColor = "white";
    document.getElementById('tab3').style.backgroundColor = "silver";
    document.getElementById('tab4').style.backgroundColor = "silver";
    document.getElementById('tab5').style.backgroundColor = "silver";
    document.getElementById('tab6').style.backgroundColor = "silver";
    return false;
}

...
...


... and it goes on for the 6 tabs. I'm sure this can be reduced, I just don't know how.
I would suggest changing your html and giving all the tags some class like 'tag', then you'll be able to do something like:

&lt;button id="tab1" class="tab" onClick="changeColor(this.id)"&gt;B1&lt;/button&gt;
&lt;button id="tab2" class="tab" onClick="changeColor(this.id)"&gt;B2&lt;/button&gt;
&lt;button id="tab3" class="tab" onClick="changeColor(this.id)"&gt;B3&lt;/button&gt;
&lt;script type="text/javascript"&gt;
    function changeColor(id) {    
        var tabs = document.getElementsByClassName('tab')
        for (var i = 0; i &lt; tabs.length; ++i) {
            var item = tabs[i];
            item.style.backgroundColor = (item.id == id) ? "white" : "silver";
        }
    }
&lt;/script&gt;


see fiddle - http://fiddle.jshell.net/vP7ku/

must shorter, Hua?