jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果代码


Posted in Javascript onFebruary 25, 2016

本文实例讲述了jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果的方法。分享给大家供大家参考,具体如下:

此插件旨在实现表格隔行变色,且鼠标移动在表格的某一行上时,该行能高亮显示。整体代码如下:

<!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=utf-8" />
<title>表格隔行变色且鼠标滑过高亮显示</title>
<style>
table{border-collapse:collapse;border:none;width:20%;}
table tr td{border:1px solid #ccc;text-align:center;cursor:pointer;}
.evenRow{background:#f0f0f0;}
.oddRow{background:#ff0;}
.activeRow{background:#f00;color:#fff;}
</style>
<script type="text/javascript" src="jquery-1.7.1.js"></script>
</head>
<body>
<script>
/*
* tableUI 0.1
* 使用tableUI可以方便地将表格提示使用体验。先提供的功能有奇偶行颜色交替,鼠标移上高亮显示
* Dependence jquery-1.7.1.js
*/ 
;(function($){
  $.fn.tableUI = function(options){ //经常用options表示有许多个参数 
  //各种属性、参数  创建一些默认值,拓展任何被提供的选项
  var defaults = {
    evenRowClass:"evenRow",
    oddRowClass:"oddRow",
    activeRowClass:"activeRow" 
    };
  var obj = $.extend(defaults,options);
  this.each(function(){ //this关键字代表了这个插件将要执行的jQuery对象  此处没有必要将this包在$号中如$(this),因为this已经是一个jQuery对象。  $(this)等同于 $($('#element'));
    //插件实现代码
    var thisTable = $(this); //获取当前对象  此时this关键字代表一个DOM元素  我们可以alert打印出此时的this代表的是object HTMLTableElement
    //添加奇偶行颜色
    $(thisTable).find("tr:even").addClass(obj.evenRowClass);
    $(thisTable).find("tr:odd").addClass(obj.oddRowClass);
    //添加活动行颜色
    $(thisTable).find("tr").mouseover(function(){
      $(this).addClass(obj.activeRowClass);
      });
    $(thisTable).find("tr").mouseout(function(){
      $(this).removeClass(obj.activeRowClass);
      });
    });
  };
})(jQuery);
//在这个封闭程序中,我们可以无限制的使用$符号来表示jQuery函数。
</script>
<table cellpadding="0" cellspacing="0">
 <tr><td>1</td><td>2</td><td>3</td></tr>
 <tr><td>1</td><td>2</td><td>3</td></tr>
 <tr><td>1</td><td>2</td><td>3</td></tr>
 <tr><td>1</td><td>2</td><td>3</td></tr>
 <tr><td>1</td><td>2</td><td>3</td></tr>
</table>
<script>
$(function(){
  $("table").tableUI();
  })
</script>
</body>
</html>

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
中国地区三级联动下拉菜单效果分析
Nov 15 Javascript
JavaScript实现统计文本框Textarea字数增强用户体验
Dec 21 Javascript
使用jQuery清空file文件域的解决方案
Apr 12 Javascript
javascript使用正则表达式检测IP地址
Dec 03 Javascript
分享javascript实现的冒泡排序代码并优化
Jun 05 Javascript
AngularJS基础 ng-non-bindable 指令详细介绍
Aug 02 Javascript
Javascript动画效果(4)
Oct 11 Javascript
基于angular中的重要指令详解($eval,$parse和$compile)
Oct 21 Javascript
vue请求本地自己编写的json文件的方法
Apr 25 Javascript
vue-element-admin 菜单标签失效的解决方式
Nov 12 Javascript
浅谈VUE中演示v-for为什么要加key
Jan 16 Javascript
vue组件系列之TagsInput详解
May 14 Javascript
jQuery插件实现文字无缝向上滚动效果代码
Feb 25 #Javascript
jQuery zTree加载树形菜单功能
Feb 25 #Javascript
JavaScript实现搜索框的自动完成功能(一)
Feb 25 #Javascript
jquery插件之文字间歇自动向上滚动效果代码
Feb 25 #Javascript
jQuery插件ImageDrawer.js实现动态绘制图片动画(附源码下载)
Feb 25 #Javascript
利用jQuery中的ajax分页实现代码
Feb 25 #Javascript
Jquery zTree 树控件异步加载操作
Feb 25 #Javascript
You might like
php5.5新数组函数array_column使用
2013/07/08 PHP
php不写闭合标签的好处
2014/03/04 PHP
PHP中的替代语法介绍
2015/01/09 PHP
使用tp框架和SQL语句查询数据表中的某字段包含某值
2019/10/18 PHP
Jquery iframe内部出滚动条
2010/02/11 Javascript
高效的获取当前元素是父元素的第几个子元素
2013/10/15 Javascript
利用javascript判断文件是否存在
2013/12/31 Javascript
Javascript 赋值机制详解
2014/11/23 Javascript
浅谈Unicode与JavaScript的发展史
2015/01/19 Javascript
跟我学习javascript的for循环和for...in循环
2015/11/18 Javascript
JS获取地址栏参数的两种方法(简单实用)
2016/06/14 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
2016/09/19 Javascript
Vue.js第四天学习笔记(组件)
2016/12/02 Javascript
jQuery实现删除li节点的方法
2016/12/06 Javascript
如何快速上手Vuex
2017/02/14 Javascript
非常实用的vue导航钩子
2017/03/20 Javascript
Bootstrap多级菜单的实现代码
2017/05/23 Javascript
Vue.js中 v-model 指令的修饰符详解
2018/12/03 Javascript
微信小程序入口场景的问题集合与相关解决方法
2019/06/26 Javascript
[00:10]DOTA2全国高校联赛 以DOTA2会友
2018/05/30 DOTA
[01:11:08]Winstrike vs NB 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
python正则表达式re模块详解
2014/06/25 Python
详解python爬虫系列之初识爬虫
2019/04/06 Python
python字典的常用方法总结
2019/07/31 Python
Python Subprocess模块原理及实例
2019/08/26 Python
Python:slice与indices的用法
2019/11/25 Python
浅谈three.js中的needsUpdate的应用
2012/11/12 HTML / CSS
Ralph Lauren意大利官方网站:时尚界最负盛名的品牌之一
2018/10/18 全球购物
Python里面如何拷贝一个对象
2014/02/17 面试题
银行领导证婚词
2014/01/11 职场文书
防暑降温通知书
2015/04/27 职场文书
大学生社会服务心得体会
2016/01/22 职场文书
2016年中学法制宣传日活动总结
2016/04/01 职场文书
python 实现mysql自动增删分区的方法
2021/04/01 Python
Python实现8种常用抽样方法
2021/06/27 Python
25张裸眼3D图片,带你重温童年的记忆,感受3D的魅力
2022/02/06 杂记