En grov udgave kunne se således ud:
demoside.htm:
-----------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
  <title>Demo af vis/skjul kasse</title>
  <style type="text/css">
    .expandable { font-size: x-small; font-family: verdana, sans-serif; width:100px;}
    .expandable h1 { font-size: x-small; font-family: verdana, sans-serif; margin:0; }
    .expandable a { text-decoration:none; display:inline; }
    .expands { display:none; }
  </style>
  <script type="text/javascript" src="expandablebox.js"></script>
  <script type="text/javascript">
    window.onload = function() {
      setupExpandables();
    }
  </script>
</head>
<body>
<div class="expandable">
  <a href="#">Overskrift 1</a>
  <div class="expands">
    denne ramme, som er nummer 1, skal vise sig<br>
    når linket bliver klikket...</div>
</div>
<div class="expandable">
  <h1><a href="#">Overskrift 2</a></h1>
  <div class="expands">
    denne ramme, som er nummer 2, skal vise sig<br>
    når linket bliver klikket...</div>
</div>
<div class="expandable">
  <h1><a href="#">Overskrift 3</a></h1>
  <div class="expands">
    denne ramme, som er nummer 3, skal vise sig<br>
    når linket bliver klikket...</div>
</div>
</body>
</html>
expandablebox.js
------------------------
function setupExpandables() {
  var divs = document.getElementsByTagName("div");
  if(divs && divs.length > 0) {
    for(var i=0; i < divs.length; i++) {
      if(divs[i].getAttribute("class") == "expandable" || divs[i].getAttribute("className") == "expandable") {
        var lnk = divs[i].getElementsByTagName("a");
        if(lnk[0]) {
          lnk[0].onclick = function() { toggleExpandable(this); return false; }
        }
      }
    }
  }
}
function toggleExpandable(e) {
  if(e) {
    var pn = e;
    for(; pn && pn.getAttribute("class") != "expandable" && pn.getAttribute("className") != "expandable"; pn=pn.parentNode);
    if(pn) {
      var pdivs = pn.getElementsByTagName("div");
      if(pdivs.length > 0) {
        for(var i = 0; i < pdivs.length; i++) {
          var xpn = pdivs[i];
          if(xpn.getAttribute("class") == "expands" || xpn.getAttribute("className") == "expands") {
            xpn.style.display = (xpn.style.display == 'none' || xpn.style.display == '' ? 'block' : 'none');
            e.blur();
          }
        }
      }
    }
    else
      alert('Indeholdende div kunne ikke findes');
  }
}