当前位置: 首页 > 图文教程 > 网络编程 > Javascript > jQuery 隔行换色 支持键盘上下键,按Enter选定值

Javascript
实现表格中行点击时的渐扩效果!
多图展示滑动过渡效果
弹出自适应图片大小的窗口弹出窗口根据图片大小,自动判断高和宽。
拖动Html元素集合 Drag and Drop any item
脚本吧 - 幻宇工作室用到js,超强推荐base.js
使用透明叠加法美化文件上传界面
JavaScript高级程序设计
对象的类型:本地对象(1)
如何实现表格中行点击时的渐扩效果!
使用button标签,实现三态图片按钮
根据分辩率调用不同的CSS.
Web版彷 Visual Studio 2003 颜色选择器
JS中简单的实现像C#中using功能(有源码下载)
js之WEB开发调试利器:Firebug 下载
jQuery中文入门指南,翻译加实例,jQuery的起点教程
jQuery 1.0.4 - New Wave Javascript(js源文件)
强悍无比的WEB开发好助手FireBug(Firefox Plugin)
换肤测试程序js脚本
xWin之JS版(2-26更新)
共享自己写一个框架DreamScript

Javascript 中的 jQuery 隔行换色 支持键盘上下键,按Enter选定值


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 186 ::
收藏到网摘: n/a

jQuery 隔行换色 支持键盘上下键,按Enter选定值
复制代码 代码如下:

<!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" />
<style>
<!--
/* css for data grid*/
.datagrid {
width: 100%;
background-color: #6595d6;
}
.datagrid caption {
}
.datagrid th {
/*background-image: url("images/div.th.background-image.gif" );*/
background-color: #6595d6;
color: #ffffff;
font-size: 12px;
font-weight: bold;
height: 25px;
line-height: 25px;
text-align: center;
}
.datagrid tr {
}
.datagrid td {
padding: 5px;
background-color: #ffffff;
}
/* css for OEC form page*/
.row_focus {
background: #B0FFB0;
border: 1px solid #00cc33;
}
/* css or table row effect */
tr.alt td {
background: #ecf6fc;
}
tr.over td {
background: #bcd4ec;
}
-->
</style>
<title>无标题文档</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
<label>
<input type="text" name="txt_no" id="txt_no" />
</label>
<br />
<table width="600" border="0" cellpadding="3" cellspacing="1" class="datagrid">
<tr>
<td>1</td>
<td> 张三</td>
<td> </td>
</tr>
<tr>
<td>2</td>
<td>李四</td>
<td> </td>
</tr>
<tr>
<td>3</td>
<td>王五</td>
<td> </td>
</tr>
<tr>
<td>4</td>
<td>马六</td>
<td> </td>
</tr>
<tr>
<td>5</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>6</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>7</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>8</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>9</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>10</td>
<td> </td>
<td> </td>
</tr>
</table>
<input type="hidden" name="prevTrIndex" id="prevTrIndex" value="-1" />
</form>
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="http://js-hotkeys.googlecode.com/files/jquery.hotkeys-0.7.9.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#prevTrIndex").val("-1");//默认-1
var trSize = $(".datagrid tr").size();//datagrid中tr的数量
function clickTr(currTrIndex){
var prevTrIndex = $("#prevTrIndex").val();
if (currTrIndex > -1){
$("#tr_" + currTrIndex).addClass("over");
}
$("#tr_" + prevTrIndex).removeClass("over");
$("#prevTrIndex").val(currTrIndex);
}
$(".datagrid tr").mouseover(function(){//鼠标滑过
$(this).addClass("over");
}).mouseout(function(){ //鼠标滑出
$(this).removeClass("over");
}).each(function(i){ //初始化 id 和 index 属性
$(this).attr("id", "tr_" + i).attr("index", i);
}).click(function(){ //鼠标单击
clickTr($(this).attr("index"));
}).dblclick(function(){ //鼠标双击
$("#txt_no").val(($(this).find("td")[0]).innerHTML);
});
$(".datagrid tr:even").addClass("alt"); //偶行变色
$(document).bind('keydown', 'up', function(evt){ //↑
var prevTrIndex = parseInt($("#prevTrIndex").val());
if (prevTrIndex == -1 || prevTrIndex == 0){
clickTr(trSize - 1);
} else if(prevTrIndex > 0){
clickTr(prevTrIndex - 1);
}
return false;
}).bind('keydown', 'down', function(evt){ //↓
var prevTrIndex = parseInt($("#prevTrIndex").val());
if (prevTrIndex == -1 || prevTrIndex == (trSize - 1)){
clickTr(0);
} else if (prevTrIndex < (trSize - 1)) {
clickTr(prevTrIndex + 1);
}
return false;
}).bind('keydown', 'return', function(evt){ //↙
var prevTrIndex = parseInt($("#prevTrIndex").val());
$("#txt_no").val(($("#tr_" + prevTrIndex).find("td")[0]).innerHTML);
return false;
});
clickTr(0);
})
</script>
</body>
</html>