zoukankan      html  css  js  c++  java
  • 08.01《jQuery》——隔行换色jQuery实现

    这是HTML代码和jQuery的触发代码:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <link rel="stylesheet" type="text/css" href="tableChangeColor_byself.css"/>
            <script src="../jquery-3.2.1/jquery-3.2.1.js"></script>
            <script src="tableChangeColor_byself.js"></script>
            <script type="text/javascript">
                $(function(){
                    $("table").alterBgColor().find("th").css("color","red");
                });
    
            </script>
        </head>
        <body>
            <table id="table1">
                <thead>
                    <tr>
                        <th> </th>
                        <th>姓名1</th>
                        <th>性别</th>
                        <th>暂住地</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td><input type="checkbox" name="choice" value="" /></td>
                        <td>张三</td>
                        <td></td>
                        <td>新疆哈密</td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="choice" value="" /></td>
                        <td>李四</td>
                        <td></td>
                        <td>江苏南京</td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="choice" value="" checked='checked' /></td>
                        <td>王五</td>
                        <td></td>
                        <td>湖南长沙</td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="choice" value="" /></td>
                        <td>赵六</td>
                        <td></td>
                        <td>浙江温州</td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="choice" value="" /></td>
                        <td>冯七</td>
                        <td></td>
                        <td>浙江嘉兴</td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="choice" value="" /></td>
                        <td>马八</td>
                        <td></td>
                        <td>浙江杭州</td>
                    </tr>
                </tbody>
            </table>
    
        </body>
    </html>

    这是jQuery插件的代码:

    ;(function($) {
        $.fn.extend({
            //"隔行换色": function(options) {
            "alterBgColor": function(options) {
                //设置默认值
                options = $.extend({
                    odd: "odd",
                    /* 偶数行样式*/
                    even: "even",
                    /* 奇数行样式*/
                    selected: "selected" /* 选中行样式*/
                }, options);
                //$("选择器",上下文); //如果不传第二个参数 默认上下文是 document                 从当前文档中 寻找
                //this 在当前对象下 寻找  table 
                $("tbody>tr:odd", this).addClass(options.odd);
                $("tbody>tr:even", this).addClass(options.even);
                $('tbody>tr', this).click(function() {
                    //判断当前是否选中
                    var hasSelected = $(this).hasClass(options.selected);
    
                    //如果选中,则移出selected类,否则就加上selected类
                    $(this)[hasSelected ? "removeClass" : "addClass"](options.selected)
                        //查找内部的checkbox,设置对应的属性。
                        .find(':checkbox').prop('checked', !hasSelected); //2.1.4 需改成prop方法
                });
                // 如果单选框默认情况下是选择的,则高色.
                $('tbody>tr:has(:checked)', this).addClass(options.selected);
                return this; //返回this,使方法可链。
            }
    
        });
    })(jQuery);

    这是其中的CSS样式代码:

    table        { border:0;border-collapse:collapse;}
    td    { font:normal 12px/17px Arial;padding:2px;width:100px;}
    th            { font:bold 12px/17px Arial;text-align:left;padding:4px;border-bottom:1px solid #333;}
    .even        { background:#FFF38F;}  /* 偶数行样式*/
    .odd        { background:#FFFFEE;}  /* 奇数行样式*/
    .selected        { background:#FF6500;color:#fff;}

    代码的结果为:

  • 相关阅读:
    Python shutil模块
    Flask 上传文件
    Flask DBUtils
    flash-session
    Flash 上下文管理
    python 栈
    python 偏函数
    threding.local
    next() 与 nextLine() 区别
    Thread.sleep(1000*3); // 休眠3秒
  • 原文地址:https://www.cnblogs.com/justlive-tears/p/9404520.html
Copyright © 2011-2022 走看看