jquery自定义表格样式


Posted in Javascript onNovember 23, 2015

本文实例讲述了jquery自定义表格样式实现代码。分享给大家供大家参考。具体如下:
运行效果截图如下:

jquery自定义表格样式

上面这张图有3种状态,默认状态(灰白相间),鼠标悬浮状态(绿色),鼠标点击状态(黄色),是如何实现的呐?
Html代码如下:

<table>
    <thead>
      <tr>
        <td>编号</td>
        <td>姓名</td>
        <td>年龄</td>
        <td>操作</td>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>1111</td>
        <td>1111</td>
        <td>1111</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>2222</td>
        <td>2222</td>
        <td>2222</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>3333</td>
        <td>3333</td>
        <td>3333</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>4444</td>
        <td>4444</td>
        <td>4444</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>5555</td>
        <td>5555</td>
        <td>5555</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
    </tbody>
</table>

插件实现代码如下:

(function () {
      $.fn.TabStyle = function (options) {

        //默认参数设置
        var settings = {
          evenClass: "tab_even",   //偶数行样式
          oddClass: "tab_odd",    //奇数行样式
          hoverClass: "tab_hover",  //鼠标悬浮样式
          clickClass: "tab_click",  //鼠标点击样式
          isClick: true        //是否开启鼠标点击样式
        };

        //合并参数
        $.extend(settings, options);

        return this.each(function () {
          //为奇偶行分别添加样式
          $(" > tbody > tr:even", this).addClass(settings.evenClass);
          $(" > tbody > tr:odd", this).addClass(settings.oddClass);


          $(" > tbody > tr", this).each(function (i) {
            //鼠标悬浮样式
            $(this).hover(function () {
              $(this).addClass(settings.hoverClass);
            }, function () {
              $(this).removeClass(settings.hoverClass);
            });
            //鼠标点击样式
            if (settings.isClick) {
              $(this).bind("click", function () {
                $(this).addClass(settings.clickClass).siblings("tr").removeClass(settings.clickClass);
              });
            }
          });
        });
      }
})();

有些时候我们可能并不需要鼠标点击后的样式,因此设置了isClick这个作为控制开关。如果不想要点击样式,将其设置为false即可。
DEMO如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>表格样式(银光棒)</title>
  <style type="text/css">
    table{ width:700px; border:1px solid green;border-collapse:collapse;}
    table td{height:40px; text-align:center; width:25%;}
    
    .tab_even{ background-color: #DDD;}
    .tab_odd{ background-color: White;}
    .tab_hover{ background-color: Green;color:White;}
    .tab_click{ background-color: Orange;}
  </style>
</head>
<body>
  <table>
    <thead>
      <tr>
        <td>编号</td>
        <td>姓名</td>
        <td>年龄</td>
        <td>操作</td>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>1111</td>
        <td>1111</td>
        <td>1111</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>2222</td>
        <td>2222</td>
        <td>2222</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>3333</td>
        <td>3333</td>
        <td>3333</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>4444</td>
        <td>4444</td>
        <td>4444</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
      <tr>
        <td>5555</td>
        <td>5555</td>
        <td>5555</td>
        <td><input type="button" value="查看" /><input type="button" value="删除" /></td>
      </tr>
    </tbody>
  </table>
  <script src="../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
  <script src="../Scripts/jquery.similar.TabStyle.js" type="text/javascript"></script>
  <script type="text/javascript">
    $("table").TabStyle();
  </script>
</body>
</html>

通过上文详细的代码,大家应该会利用jquery自定义表格样式了,小编的表格样式还不够完美,还需要进行改进,希望大家在完成这个样式的基础上,继续创新,做一个属于自己的表格。

Javascript 相关文章推荐
JavaScript 在各个浏览器中执行的耐性
Apr 06 Javascript
javascript使用isNaN()函数判断变量是否为数字
Sep 21 Javascript
JavaScript学习笔记之Function对象
Jan 22 Javascript
Node.js 文件夹目录结构创建实例代码
Jul 08 Javascript
jQuery.cookie.js实现记录最近浏览过的商品功能示例
Jan 23 Javascript
AngularJS service之select下拉菜单效果
Jul 28 Javascript
jquery ajaxfileupload异步上传插件
Nov 21 jQuery
vue router嵌套路由在history模式下刷新无法渲染页面问题的解决方法
Jan 25 Javascript
AngularJS监听ng-repeat渲染完成的方法
Mar 20 Javascript
详解vue中$nextTick和$forceUpdate的用法
Dec 11 Javascript
JS端基于download.js实现图片、视频时直接下载而不是打开预览
May 09 Javascript
Openlayers显示瓦片网格信息的方法
Sep 28 Javascript
jquery实现表单验证简单实例演示
Nov 23 #Javascript
JavaScript与HTML的结合方法详解
Nov 23 #Javascript
js实现接收表单的值并将值拼在表单action后面的方法
Nov 23 #Javascript
跟我学习javascript的垃圾回收机制与内存管理
Nov 23 #Javascript
跟我学习javascript解决异步编程异常方案
Nov 23 #Javascript
jQuery实现选中弹出窗口选择框内容后赋值给文本框的方法
Nov 23 #Javascript
Bootstrap每天必学之表单
Nov 23 #Javascript
You might like
php支付宝接口用法分析
2015/01/04 PHP
Nginx下ThinkPHP5的配置方法详解
2017/08/01 PHP
PHP yield关键字功能与用法分析
2019/01/03 PHP
Ajax+PHP实现的删除数据功能示例
2019/02/12 PHP
CCPry JS类库 代码
2009/10/30 Javascript
三级下拉菜单的js实现代码
2011/05/23 Javascript
js函数获取html中className所在的内容并去除标签
2013/09/08 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
2013/11/10 Javascript
jquery 取子节点及当前节点属性值
2014/07/25 Javascript
AngularJS入门教程之学习环境搭建
2014/12/06 Javascript
jQuery简单创建节点的方法
2016/09/09 Javascript
Vue.js bootstrap前端实现分页和排序
2017/03/10 Javascript
Vue.js实现输入框绑定的实例代码
2017/08/24 Javascript
详解.vue文件中style标签的几个标识符
2018/07/17 Javascript
vue-cli 3.0 自定义vue.config.js文件,多页构建的方法
2018/09/19 Javascript
解决vuejs 使用value in list 循环遍历数组出现警告的问题
2018/09/26 Javascript
JavaScript数组去重的方法总结【12种方法,号称史上最全】
2019/02/28 Javascript
jquery简单实现纵向的无缝滚动代码实例
2019/04/01 jQuery
使用js实现单链解决前端队列问题的方法
2020/02/03 Javascript
在Django的form中使用CSS进行设计的方法
2015/07/18 Python
使用Python脚本实现批量网站存活检测遇到问题及解决方法
2016/10/11 Python
python中numpy.zeros(np.zeros)的使用方法
2017/11/07 Python
python导出chrome书签到markdown文件的实例代码
2017/12/27 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
Pycharm配置autopep8实现流程解析
2020/11/28 Python
Rossignol金鸡美国官网:始于1907年法国百年雪具品牌
2019/03/06 全球购物
新加坡一家在线男士皮具品牌:Faire Leather Co.
2019/12/01 全球购物
什么是TCP/IP
2014/07/27 面试题
化学专业自荐信
2014/05/28 职场文书
分公司经理任命书
2014/06/05 职场文书
会展策划与管理专业求职信
2014/06/09 职场文书
企业口号大全
2014/06/12 职场文书
俞敏洪一分钟演讲稿
2014/08/26 职场文书
法定代表人授权委托书范文
2014/09/22 职场文书
2014流动人口计划生育工作总结
2014/12/20 职场文书
《孙子兵法》:欲成大事者,需读懂这些致胜策略
2019/08/23 职场文书