function trouveimg()
{
  var imgs,i;
  // Parcourons toutes les images, et trouvons celles qui comportent la classe 'roll'
  imgs=document.getElementsByTagName('img');
  for(i=0;i<imgs.length;i++)
  {
    if(/roll/.test(imgs[i].className))
    {
      // ajoutons la fonction 'roll' à l'élément parent de cette image
      imgs[i].parentNode.onmouseover=function(){roll(this,true);};
      imgs[i].parentNode.onmouseout=function(){roll(this,false);};
      imgs[i].parentNode.onfocus=function(){roll(this,true);};
      imgs[i].parentNode.onblur=function(){roll(this,false);};
    }
  }
}

function roll(o,bool)
{
  var i,isnode,src,ftype,newsrc,nownode;
  // parcourons tous les enfants
  for (i=0;i<o.childNodes.length;i++)
  {
    nownode=o.childNodes[i];
    // si le nœud est un élément et une image, fixons la variable et sortons de la boucle
    if(nownode.nodeType==1 && /img/i.test(nownode.nodeName))
    {
      isnode=i;
      break;
    }
  }
  // permutons le fichier source de l'image
  src = o.childNodes[isnode].src;
  ftype = src.substring(src.lastIndexOf('.'), src.length); 
  newsrc = src.replace('_over','');
  if(bool)
  {
    newsrc = newsrc.replace(ftype, '_over'+ftype);
  }
  o.childNodes[isnode].src = newsrc;
}

window.onload = function(){
  trouveimg();
}
