window.onload=function() {
var aDT=document.getElementsByTagName('dt');
for(var i=0; i<aDT.length; i++) {
    if (aDT[i].addEventListener) { // W3C
    	aDT[i].addEventListener('click', function() {hideAll(this.nextSibling.nextSibling);}, false);
        }
    else {
    	aDT[i].onclick=function() {hideAll(this.nextSibling);};
        }
	aDT[i].style.cursor='pointer';
	}
hideAll();
// open first question
document.getElementsByTagName('dd')[0].style.display='';
// or in a specific block
// document.getElementById('group1')getElementsByTagName('dd')[0].style.display='';
}

var txt=['hide all', hideAll, 'show all', showAll];
function buttons() {
var parent=document.createElement('div');
document.body.appendChild(parent);
for(var i=0; i<txt.length; i+=2) {
    var o=document.createElement('button');
    o.setAttribute('type', 'button');
    o.onclick=new Function('txt['+i+'+1]()');
    o.appendChild(document.createTextNode(txt[i]));
    parent.appendChild(o);
    }
}

function hideAll(dt) {
var aDD=(dt)? dt.parentNode.getElementsByTagName('dd') : document.getElementsByTagName('dd');
for(var i=0; i<aDD.length; i++) {
	if(aDD[i]!=dt) {aDD[i].style.display='none';}
    }
if(dt) {dt.style.display=(dt.style.display=='none')? '' : 'none';}
}

function showAll() {
var aDD=document.getElementsByTagName('dd');
for(var i=0; i<aDD.length; i++) {
	aDD[i].style.display='';
    }
}