<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>DIV+CSS仿网易的滑动门技术AJAX</title>
<style type="text/css">
<!--
#header {
 background-color: #F8F4EF;
 height: 200px;
 width: 400px;
 margin: 0px;
 padding: 0px;
 border: 1px solid #ECE1D5;
 font-family: "宋体";
 font-size: 12px;
}
#menu {
 margin: 0px;
 padding: 0px;
 list-style-type: none;
}
#menu li {
 display: block;
 width: 100px;
 text-align: center;
 float: left;
 margin: 0px;
 padding-top: 0.2em;
 padding-right: 0px;
 padding-bottom: 0.2em;
 padding-left: 0px;
 cursor: hand;
}
.sec1 { background-color: #FFFFCC;}
.sec2 { background-color: #00CCFF;}
.block { display: block;}
.unblock { display: none;}
li{ list-style-type:none;}
ul{ padding:0px; margin:0px;}
-->
</style>
</head>
<body>
<script language=javascript>
function secBoard(n)
{
 for(i=0;i<menu.childNodes.length;i++)
 menu.childNodes[i].className="sec1";
 menu.childNodes[n].className="sec2";
  
 for(i=0;i<main.childNodes.length;i++)
 main.childNodes[i].style.display="none";
 main.childNodes[n].style.display="block";
 
}
</script>
<div id="header">
  <ul id="menu">
  <li onMouseOver="secBoard(0)" class="sec2">最新新闻</li>
  <li onMouseOver="secBoard(1)" class="sec1">最新文章</li>
  <li onMouseOver="secBoard(2)" class="sec1">最新日志</li>
  <li onMouseOver="secBoard(3)" class="sec1">论坛新帖</li>
  </ul>
  <!--内容显示区域-->
  <ul id="main">
  <li class="block">第一个内容,<a href="http://www.qpsh.com/">欢迎访问网页特效代码</a></li>
  <li class="unblock">第二个内容,<a href="http://www.qpsh.com/">欢迎访问网页特效代码</a></li>
  <li class="unblock">第三个内容,<a href="http://www.qpsh.com/">欢迎访问网页特效代码</a></li>
  <li class="unblock">第四个内容,<a href="http://www.qpsh.com/">欢迎访问网页特效代码</a></li>
  </ul>
  <!--内容显示区域-->
</div>
</body>
</html> 

解决方案 »

  1.   

    火狐都是
    document.getElementById("menu"),而不是直接写 menu
      

  2.   

    本帖最后由 net_lover 于 2011-07-05 09:22:08 编辑
      

  3.   

    childNodes在火狐上不行的,要用children
      

  4.   

    <script language="javascript" type="text/javascript">
        function secBoard(n) {
            var menu = document.getElementById("menu");
            var main = document.getElementById("main");
            for (i = 0; i < menu.childNodes.length; i++) {
                menu.children[i].className = "sec1";
                menu.children[n].className = "sec2";
            }
            for (i = 0; i < main.childNodes.length; i++) {
                main.children[i].style.display = "none";
                main.children[n].style.display = "block";
            }
        }
    </script>
      

  5.   


    <script language=javascript>
    var $ = function (objId) {
       return document.all ? document.all[objId] : document.getElementById(objId);
    }
    function secBoard(n)
    {
     var manu=$('menu').getElementsByTagName("li");
     
     for(i=0;i<menu.childNodes.length;i++)
      menu[i].className="sec1";

     menu[n].className="sec2";
       
     var main= $('main').getElementsByTagName("li");
     for(i=0;i<main.childNodes.length;i++)
      main.[i].style.display="none";

     main.[n].style.display="";
     
    }
    </script>
      

  6.   

    下边的错了,要用这个 
    for(i=0;i<main.childNodes.length;i++)
         main[i].style.display="none";
        
     main[n].style.display="";
      

  7.   

    <script language=javascript>
    var $ = function (objId) {
       return document.all ? document.all[objId] : document.getElementById(objId);
    }
    function secBoard(n)
    {
     var manu=$('menu').getElementsByTagName("li");
     
     for(i=0;i<menu.childNodes.length;i++)
         menu[i].className="sec1";
        
     menu[n].className="sec2";
       
     var main= $('main').getElementsByTagName("li");
     for(i=0;i<main.childNodes.length;i++)
         main[i].style.display="none";
        
     main[n].style.display="";
     
    }
    </script>
      

  8.   

    不好意思,还是写错了,这样应该没问题了
    <script language=javascript>
    var $ = function (objId) {
       return document.all ? document.all[objId] : document.getElementById(objId);
    }
    function secBoard(n)
    {
     var manu=$('menu').getElementsByTagName("li");
     
     for(i=0;i<menu.length;i++)
         menu[i].className="sec1";
        
     menu[n].className="sec2";
       
     var main= $('main').getElementsByTagName("li");
     for(i=0;i<main.length;i++)
         main[i].style.display="none";
        
     main[n].style.display="";
     
    }
    </script>