画像が右から左と流れて、なおかつリンクも有効なやつ。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<title>動かすぞぉ〜</title>
<style type="text/css">
#menu {
list-style-type: none;
margin: 1em;
padding: 0;
width:600px;
height:100px;
}
#menu li {
display: inline;
}
#menu li a img {
border: 0px none;
}

</style>

<ul id="menu">
<li><a href="#"><img src="./img/0.gif" width="100" height="100" alt="*"></a></li>
<li><a href="#"><img src="./img/1.gif" width="100" height="100" alt="*"></a></li>
<li><a href="#"><img src="./img/2.gif" width="100" height="100" alt="*"></a></li>
<li><a href="#"><img src="./img/3.gif" width="100" height="100" alt="*"></a></li>
<li><a href="#"><img src="./img/4.gif" width="100" height="100" alt="*"></a></li>
<li><a href="#"><img src="./img/6.gif" width="100" height="100" alt="*"></a></li>
<li><a href="#"><img src="./img/7.gif" width="100" height="100" alt="*"></a></li>
</ul>

<script type="text/javascript">
//@cc_on

function Mover (targetUL, step, interval) {
 var dc = document;
 var ul = dc.getElementById( targetUL );
 var li = ul.getElementsByTagName( 'LI' );
 var ct, o, s, x, xm = 0;

 with (ul.style) overflow = 'hidden', position = 'absolute';
 
 for (ct = 0; o = li[ ct++ ]; ) {
  s = o.style;
  s.position = 'absolute';
  s.left = xm + 'px';
  xm += o.offsetWidth;
 }
 
 function LOOP () {
  for (ct = 0; o = li[ ct ]; ct++) {
   x = o.offsetLeft - step;
   if (x + o.offsetWidth < 0) x= xm-o.offsetWidth;
   o.style.left = x + 'px';
  }
  setTimeout( arguments.callee, interval );
 }
 LOOP();
}

Mover('menu', 1, 30);

document./*@if (@_jscript)attachEvent('on'+ @else@*/addEventListener(/*@end@*/
 'mouseover', (function (get, m) {
  return function (evt) {
   var e = evt./*@if (@_jscript) srcElement @else@*/ target /*@end@*/, p = get(e, 'id', 'menu');
   var o, a, c, i;

   if ( p && 'IMG' === e.nodeName ) {
    m = i = p.getElementsByTagName( 'IMG' );
    for (c = 0; o = i[c++]; ) {
     a = o == e ? 10: 8;
     o.style./*@if (@_jscript) filter = 'alpha(opacity='+ a + '0)' @else@*/ opacity = a / 10 /*@end@*/;
    }
   } else {
    if (m) {
     for (c = 0; o = m[c++];) o.style./*@if (@_jscript) filter = 'alpha(opacity=100)' @else@*/ opacity = 1 /*@end@*/;
     m = null;
    }
   }
  };
 
 })(
  function (n, t, v) {
   return n ? (v == n[t]) ? n: arguments.callee(n.parentNode, t, v): null;
  }
 ), false);

</script>