Сократить код JavaScript
Привет.
После нажатия на определённую кнопку открывается блок div с уникальным id. Код js получается большой, потому что повторяется функция. Можно как то уменьшить код?
document.querySelector('button.1').onclick = function() {
var ob = document.getElementById('div1');
if( ob.style.display=='block') { ob.style.display='none'; }
else { ob.style.display='block'; }
}
document.querySelector('button.2').onclick = function() {
var ob = document.getElementById('div2');
if( ob.style.display=='block') { ob.style.display='none'; }
else { ob.style.display='block'; }
}
document.querySelector('button.3').onclick = function() {
var ob = document.getElementById('div3');
if( ob.style.display=='block') { ob.style.display='none'; }
else { ob.style.display='block'; }
}
document.querySelector('#type').onclick = function() {
var ob = document.getElementById('hid1');
if( ob.style.display=='block') { ob.style.display='none'; }
else { ob.style.display='block'; }
}
document.querySelector('#type2').onclick = function() {
var ob = document.getElementById('hid2');
if( ob.style.display=='block') { ob.style.display='none'; }
else { ob.style.display='block'; }
}
Пробовал вот так:
document.querySelector('button.1','button.2','button.3','#type','#type2').onclick = function() {
var ob = document.getElementById('div1','div2','div3','hid1','hid2');
if( ob.style.display=='block') { ob.style.display='none'; }
else { ob.style.display='block'; }
}
но почему-то работает только первый в списке селектор?
HTML
<button class="1"></button>
<div id="div1">блаблабла</div>
...
<span id="type"></span>
<div id="hid1">блаблабла</div>
...
CSS
стилей для элементов нет, скрипт js скрывает div1,div2,div3,hid1,hid2