测试ie6/7/FF都通过;CSS和JS完全分离;加了部分注释
<!
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 > 无标题文档 </ title >
< style type ="text/css" >
.container ul { margin : 0 ; padding : 0 ; }
.container li { cursor : pointer ; height : 30px ; width : 200px ; background-color : #FFC ; line-height : 30px ; text-indent : 1em ; font-size : 12px ; }
.container .change { cursor : pointer ; height : 30px ; width : 200px ; background-color : #C1F9CC ; line-height : 30px ; text-indent : 1em ; font-size : 12px ; }
.container .current { cursor : pointer ; height : 30px ; width : 200px ; background-color : #F66 ; line-height : 30px ; text-indent : 1em ; font-size : 12px ; }
</ style >
< script type ="text/javascript" >
window.onload = function () {
changeColor( ' content ' );
changeColor( ' content2 ' ); // 写上要控制的UL的ID,想控制几个就控制几个
changeColor( ' content3 ' );
}
function changeColor(id) {
var arrayli = document.getElementById(id).getElementsByTagName( ' li ' );
var bool = true ; // 奇数行为true
var oldStyle; // 保存原有样式
for ( var i = 0 ;i < arrayli.length;i ++ ){
// 各行变色
if (bool === true ){
arrayli[i].className = " change " ;
bool = false ;
}
else {
arrayli[i].className = "" ;
bool = true ;
}
// 划过变色
arrayli[i].onmouseover = function () {
oldStyle = this .className;
this .className = " current "
}
arrayli[i].onmouseout = function () {
this .className = oldStyle;
}
}
}
</ script >
</ head >
< body >
< span > 第一个UL </ span >
< div class ="container" >
< ul id ="content" >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
</ ul >
</ div >
< br />
< span > 第二个UL </ span >
< div class ="container" >
< ul id ="content2" >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
</ ul >
</ div >
< span > 第三个UL </ span >
< div class ="container" >
< ul id ="content3" >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
</ ul >
</ div >
</ body >
</ html >
< html xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv ="Content-Type" content ="text/html; charset=gb2312" />
< title > 无标题文档 </ title >
< style type ="text/css" >
.container ul { margin : 0 ; padding : 0 ; }
.container li { cursor : pointer ; height : 30px ; width : 200px ; background-color : #FFC ; line-height : 30px ; text-indent : 1em ; font-size : 12px ; }
.container .change { cursor : pointer ; height : 30px ; width : 200px ; background-color : #C1F9CC ; line-height : 30px ; text-indent : 1em ; font-size : 12px ; }
.container .current { cursor : pointer ; height : 30px ; width : 200px ; background-color : #F66 ; line-height : 30px ; text-indent : 1em ; font-size : 12px ; }
</ style >
< script type ="text/javascript" >
window.onload = function () {
changeColor( ' content ' );
changeColor( ' content2 ' ); // 写上要控制的UL的ID,想控制几个就控制几个
changeColor( ' content3 ' );
}
function changeColor(id) {
var arrayli = document.getElementById(id).getElementsByTagName( ' li ' );
var bool = true ; // 奇数行为true
var oldStyle; // 保存原有样式
for ( var i = 0 ;i < arrayli.length;i ++ ){
// 各行变色
if (bool === true ){
arrayli[i].className = " change " ;
bool = false ;
}
else {
arrayli[i].className = "" ;
bool = true ;
}
// 划过变色
arrayli[i].onmouseover = function () {
oldStyle = this .className;
this .className = " current "
}
arrayli[i].onmouseout = function () {
this .className = oldStyle;
}
}
}
</ script >
</ head >
< body >
< span > 第一个UL </ span >
< div class ="container" >
< ul id ="content" >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
</ ul >
</ div >
< br />
< span > 第二个UL </ span >
< div class ="container" >
< ul id ="content2" >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
</ ul >
</ div >
< span > 第三个UL </ span >
< div class ="container" >
< ul id ="content3" >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
< li > 隔行变色,划过变色 </ li >
</ ul >
</ div >
</ body >
</ html >