Leider verschluckt das Forum einen Teil der Zeilenumbrüche. Hier noch Mal der Code ohne Code-Tags:
function show_elements(id) {
var conts = document.querySelectorAll("div[id^='cont']");
for (var i = 0; i < conts.length; i++) {
if (conts[i].id == id) conts[i].style.display = "block";
else conts[i].style.display = "none";
}
}
Das "^" in document.querySelectorAll("div[id^='cont']") gibt an, dass die ID mit "cont" beginnt,
d. h. dieser Selektor erkennt Übereinstimmung für "cont1", "cont2", "cont3" und ggf. weiter so.
In "var conts" ist conts nur ein Name, er ist mehr oder weniger beliebig und könnte genau so gut a oder x sein.
Aber es ist guter Stil, Variablennamen so festzulegen, dass zu erkennen ist, worum es sich handelt, daher habe ich conts gewählt.
Diese Lösung hat den Vorteil, dass man nur das HTML zu erweitern braucht, wenn man neue Container hinzufügt und nichts
am Javascript ändern muss.
Dir gleichfalls frohe Weihnachten und ein gutes 2017!