表格奇偶数背景颜色及鼠标点击效果
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>mytable</title>
<script language="JavaScript">
// src="anole.js"
// about this: javapig修改 源自 忘了。
// Date: 2006-04-29
function anole (
str_tableid, // table id
num_header_offset, // 表头行数
str_odd_color, // 奇数行的颜色
str_even_color, // 偶数行的颜色
str_mover_color, // 鼠标经过行的颜色
str_onclick_color // 选中行的颜色
) {
// 表格ID参数验证
if (!str_tableid) return alert (str_tableid+"表格不存在!");
var obj_tables = (document.all ? document.all[str_tableid] : document.getElementById(str_tableid));
if (!obj_tables) return alert ("ID为 (" + str_tableid + ")不存在!");
// 设置个参数的缺省值
var col_config = [];
col_config.header_offset = (num_header_offset ? num_header_offset : 0);
col_config.odd_color = (str_odd_color ? str_odd_color : '#ffffff');
col_config.even_color = (str_even_color ? str_even_color : '#dbeaf5');
col_config.mover_color = (str_mover_color ? str_mover_color : '#6699cc');
col_config.onclick_color = (str_onclick_color ? str_onclick_color : '#4C7DAB');
// 初始化表格(可能多个表格用同一个ID)
if (obj_tables.length)
for (var i = 0; i < obj_tables.length; i++)
tt_init_table(obj_tables[i], col_config);
else
tt_init_table(obj_tables, col_config);
}
function tt_init_table (obj_table, col_config) {
var col_lconfig = [],
col_trs = obj_table.rows;
if (!col_trs) return;
for (var i = col_config.header_offset; i < col_trs.length ; i++) { //i 从 表头以下开始
col_trs[i].config = col_config;
col_trs[i].lconfig = col_lconfig;
col_trs[i].set_color = tt_set_color;
col_trs[i].onmouseover = tt_mover;
col_trs[i].onmouseout = tt_mout;
col_trs[i].onmousedown = tt_onclick;
col_trs[i].order = (i - col_config.header_offset) % 2;
col_trs[i].onmouseout();
}
}
function tt_set_color(str_color) {
this.style.backgroundColor = str_color;
}
// 事件操作
function tt_mover () {
if (this.lconfig.clicked != this)
this.set_color(this.config.mover_color);
}
function tt_mout () {
if (this.lconfig.clicked != this)
this.set_color(this.order ? this.config.odd_color : this.config.even_color);
}
function tt_onclick () {
if (this.lconfig.clicked == this) {
this.lconfig.clicked = null;
this.onmouseover();
}
else {
var last_clicked = this.lconfig.clicked;
this.lconfig.clicked = this;
if (last_clicked) last_clicked.onmouseout();
this.set_color(this.config.onclick_color);
}
}
</script>
</head>
<body>
<table id="demo" cellpadding="1" cellspacing="1" border="0" width="100%" align="center">
<tr><th colspan="2" bgcolor="ffffff">HTML document object properties</th></tr>
<tr><td width="20%">activeElement</td><td>Retrieves the object that has the focus.</td></tr>
<tr><td>aLinkColor</td><td>Sets or retrieves the color of all links in the document.</td></tr>
<tr><td>bgColor</td><td>Sets or retrieves the background color behe document object.</td></tr>
<tr><td>body</td><td>Specifies the beginning and end of the document body.</td></tr>
<tr><td>contentEditable</td><td>Sets or retrieves whether the userdocument object.</td></tr>
<tr><td>cookie</td><td>Sets or retrieves the string value of a cookie.</td></tr>
<tr><td>defaultCharset</td><td>Sets or retrieves the default chara of the document.</td></tr>
<tr><td>designMode</td><td>Sets or retrieves whether the document can be edited.</td></tr>
<tr><td>documentElement</td><td>Retrieves a reference to the root node of the document.</td></tr>
<tr><td>domain</td><td>Sets or retrieves the security domain of the document.</td></tr>
</table>
<script language="JavaScript">
anole('demo', 1, '#ffffff', '#ccccff', '#ffccff', '#cc99ff');
</script>
</body>
</html>