zoukankan      html  css  js  c++  java
  • jquery 第二章

    1、本章目标
        css样式
        选择器
    2、css样式
        宽、高、边框、背景颜色、字体.......

    <html>
        <head>
            <style>
                div{
                    width: 500px;
                    height: 300px;
                    border: 1px red solid;
                }
                #div1{
                    background-color: greenyellow;
                }
                .c1{
                    font-size: 20px;
                }
                a{
                    text-decoration: none;
                }
                a:link{
                    color: darkmagenta;
                }
                a:hover{
                    font-size: 30px;
                }
                a:active{
                    color: hotpink;
                }
                a:visited{
                    font-weight: bold;
                }
            </style>
            
        </head>
        <body>
            <div id="div1">
                abc123
            </div>
            <div class="c1">
                xyz
            </div>
            <a >超链接</a>
        </body>
    </hcss
    css样式


    3、选择器
        通过某些语法规则,选择某些特定的元素节点
    4、基本选择器
        ID选择器、类选择器、元素选择器、通配符选择器(*)、集合选择器

    <html>
        <head>
            <script src="js/jquery-3.2.1.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function(){
                    //设置div的宽/高/边框
                    //元素选择器
                    $("div").css("width","600px");
                    $("div").css("height","400px");
                    $("div").css("border","1px red solid");
                    
                    //ID选择器
                    $("#div2").css("font-size","30px");
                    
                    //类选择器
                    $(".c").css("background-color","gray");
                    
                    //通配符选择器
                    $("*").css("color","green");
                    
                    //集合选择器
                    $("#div1,.c").css("padding-left","40px");
                    
                    //给div元素绑定单击事件
                    $("div").click(function(){
                        //获取各自的文本值
                        var v = $(this).text();
                        alert(v);
                    });
                });
            </script>
        </head>
        <body>
            <div id="div1">
                123
            </div>
            
            <div id="div2" class="c">
                456
            </div>
            
            <div id="div3" class="c">
                789
            </div>
        </body>
    </html>
    基本选择器


    5、层次选择器

    <html>
        <head>
            <style type="text/css">
            
            </style>
            <script src="js/jquery-3.2.1.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function(){
                    //获取div1下的所有span标签
                    //$("#div1 span").css("color","red");
                    
                    //获取div1下的所有子元素span标签
                    //$("#div1>span").css("color","red");
                    
                    //获取div1后的下一个同级元素
                    //$("#div1+div").css("font-size","50px");
                    //$("#div1").next("div").css("font-size","50px");
                    
                    
                    //获取div1后的所有同级元素
                    //$("#div1~div").css("font-size","50px");
                    //$("#div1").nextAll("div").css("font-size","50px");
                    
                    //获取div1的所有同级元素
                    $("#div1").siblings("div").css("font-size","50px");
                });
            </script>
        </head>
        <body>
            <div>000</div>
            
            <div id="div1">
                <span>aaa</span>
                <span>bbb</span>
            </div>
            
            <div id="div2">
                456
            </div>
            
            <div id="div3">
                789
            </div>
        </body>
    </html>
    层次选择器


    6、过滤器选择器
        1、基本过滤器

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script src="js/jquery-3.2.1.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function(){
                    //给表格中所有的td元素赋予文本值
                    $("td").text(1);
                    
                    //给表格的第一行设置字体大小:30px
                    $("tr:first").css("font-size","30px");
                    
                    //给表格的最后一行设置字体大小:30px
                    $("tr:last").css("font-size","15px");
                    
                    //给表格的下标为偶数的行数设置背景颜色
                    $("tr:even").css("background-color","#D3D3D3");
                    //给表格的下标为奇数的行数设置背景颜色
                    $("tr:odd").css("background-color","#AEEEEE");
                    
                    //给表格的下标等于3的行数设置字体重量
                    $("tr:eq(3)").css("font-weight","bold");
                    
                });
            </script>
        </head>
        <body>
            <table border="1" width="50%">
                <tr><th></th><th></th><th></th></tr>
                <tr><td></td><td></td><td></td></tr>
                <tr><td></td><td></td><td></td></tr>
                <tr><td></td><td></td><td></td></tr>
                <tr><td></td><td></td><td></td></tr>
                <tr><td></td><td></td><td></td></tr>
                <tr><td></td><td></td><td></td></tr>
                <tr><td></td><td></td><td></td></tr>
            </table>
        </body>
    </html>
    基本过滤器


        2、内容过滤器

     

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script src="js/jquery-3.2.1.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function(){
                    //选取出:内容中包含有 "中国" 的div 
                    $("div:contains(中国)").css("font-size","55px");
                    
                    //选取出:内容为空的div
                    $("div:empty").text('通过jquery设置的文本值');
                    
                    //选取出:含有p标签的div
                    $("div:has(p)").css("color","red");
                    
                    //选取出:内容不为空的div
                    $("div:parent").css("font-size","100px")
                });
            </script>
        </head>
        <body>
            <div>我来自中国,我爱重庆</div>
            <div>
                <p>ABC</p>
            </div>
            <div></div>
        </body>
    </html>
    内容过滤器


        3、可见性过滤器

     

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script type="text/javascript" src="js/jquery-3.2.1.min.js">
                
            </script>
            
            <script type="text/javascript">
                $(document).ready(function(){
                    //选取出显示的h3,然后在3秒之内隐藏
                    $("h3:visible").hide(3000);
                    
                    //选取出隐藏的p,然后在3秒之内显示
                    $("p:hidden").show(3000);
                });
            </script>
        </head>
        <body>
            <h3 style="display: block;">显示的内容</h3>
            <p style="display: none;">隐藏的内容</p>
        </body>
    </html>
    可见性过滤器


        4、属性过滤器

     

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script type="text/javascript" src="js/jquery-3.2.1.min.js">
            </script>
            
            <script type="text/javascript">
                $(document).ready(function(){
                    //选取出拥有id属性的div
                    $("div[id]").css("font-size","20px");
                    
                    //选取出x属性等于x2的div
                    $("div[x=x2]").css("color","red");
                });
            </script>
        </head>
        <body>
            <div id="div1">
                aaa
            </div>
            
            <div id="div2" x="x2">
                bbb
            </div>
            
            <div id="div3">
                ccc
            </div>
        </body>
    </html>
    属性过滤器


        5、子元素过滤器

     

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script type="text/javascript" src="js/jquery-3.2.1.min.js">
            </script>
            
            <script type="text/javascript">
                $(document).ready(function(){
                    //选取出ul中第一个li
                    $("ul li:first-child").css("color","red");
                });
            </script>
        </head>
        <body>
            <ul>    
                <li></li>
                <li></li>
                <li></li>
                <li></li>
            </ul>
        </body>
    </html>
    子元素过滤器


    7、表单对象属性过滤选择器

     

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script type="text/javascript" src="js/jquery-3.2.1.min.js">
            </script>
            
            <script type="text/javascript">
                $(document).ready(function(){
                    //给按钮绑定单击事件
                    $("#btn").click(function(){
                        //获取选中的input标签,然后迭代(循环)
                        $("input:checked").each(function(){
                            //获取当前迭代对象的value值
                            alert(this.value);
                        });
                        
                        //下拉框,不要写上select标签名,否则不能生效
                        var v = $(":selected").text();
                        alert(v)
                    })
                });
            </script>
        </head>
        <body>
            <form>
                爱好:<input type="checkbox"  value="篮球" checked="checked" />篮球
                    <input type="checkbox"  value="乒乓球" />乒乓球
                    <input type="checkbox"  value="羽毛球" />羽毛球
                    <br/>
                学历:<select>
                        <option value="高中">高中</option>
                        <option value="大专" selected="selected">大专</option>
                        <option value="本科">本科</option>
                    </select>
                    <br>
                    <button type="button" id="btn">获取表单的数据</button>
            </form>
        </body>
    </html>
    表单对象属性过滤选择器


    8、表单选择器

     

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script type="text/javascript" src="js/jquery-3.2.1.min.js">
            </script>
            
            <script type="text/javascript">
                $(document).ready(function(){
                    $(":input").css("border","1px solid red");
                    
                    //获取每个单选框的值
                    /* $(":radio").each(function(){
                        alert(this.value);
                    }); */
                    
                    //获取每个复选框的值
                    /* $(":checkbox").each(function(){
                        alert(this.value);
                    }); */
                    
                    //获取表单中的所有按钮
                    $(":button").css("color","red");
                });
            </script>
        </head>
        <body>
            <form>
                姓名:<input/>
                    <br>
                性别:<input type="radio" name="sex" value="男" /><input type="radio" name="sex" value="女" checked="checked" /><br>
                爱好:<input type="checkbox"  value="篮球" checked="checked" />篮球
                    <input type="checkbox"  value="乒乓球" />乒乓球
                    <input type="checkbox"  value="羽毛球" />羽毛球
                    <br/>
                <input type="button" value="按钮" />
            </form>
        </body>
    </html>
    表单选择器

     作业

    显示商品图片的放大镜效果

    分析

    需要引入两个js文件:jquery.jqzoom.js和jquery-1.1.1.js.调用jqueryzoom()方法实现图片放大效果

    .jqzoom{
    border:1px solid #CCCCCC;
    float:left;
    position:relative;
    padding:0px;
    cursor:crosshair;
    }
    .jqzoom{
    float:left;
    }
    
    
    div.zoomdiv {
    z-index                 : 100;
    position                : absolute;
    top:0px;
    left:0px;
    width                   : 200px;
    height                  : 200px;
    background: #ffffff;
    border:1px solid #CCCCCC;
    display:none;
    text-align: center;
    overflow: hidden;
    
    
    }
    
    div.jqZoomPup {
    z-index                 : 10;
    visibility              : hidden;
    position                : absolute;
    top:0px;
    left:0px;
    /*width                   : 50px;
    
    height                  : 50px;
    */
    border: 1px solid #aaa;
    background: #ffffff url(../images/zoomlens.gif) 50% top  no-repeat;
    opacity: 0.3;
    -moz-opacity: 0.3;
    -khtml-opacity: 0.3;
    filter: alpha(Opacity=30);
    }
    jqueryzoom.css
    body {
        text-align: center;
        font-family : Arial, Verdana, Lucida Sans, Helvetica, sans-serif;
        margin : 0px;
        padding : 0px;
        font-size: 12px;
        background-color:wheat;
    }
    a {
        text-decoration: none;
        color: #0066CC;
    }
    img {
        border: 0px;
    }
    h2 {
        font-size: 20px;
    }
    h3 {
        font-size: 13px;
    }
    div#wrapper {
        width : 970px;
        padding: 0px;
        margin: 0 auto;
        text-align: left;
    }
    div#header {
        width : 100%;
        clear : both;
        margin: 0 auto;
        height: 117px;
    }
    div#header a {
        float: left;
        text-decoration: none;
    }
    div#header a#version {
        float: left;
        margin-left: 10px;
    }
    div#maincontent {
        width : 970px;
        float: left;
        margin: 0px;
        padding: 5px;
    }
    div#maincontent p {
        float: left;
        width: 970px;
        clear: both;
        margin-top: 5px;
        margin-bottom: 5px;
        padding: 0px;
    }
    div#maincontent xmp {
        float: left;
        width: 970px;
        clear: both;
        white-space: pre;
        white-space: -moz-pre-wrap;
        word-wrap: break-word;
        margin-top: 5px;
        margin-bottom: 5px;
    }
    span.code {
        float: left;
        border: 1px dotted #99CC00;
        background-color: #E6FF97;
        clear: both;
        width: 970px;
    }
    span.tozoom {
        float: left;
        width: 420px;
        margin: 5px;
    }
    span.tozoom img {
        border: 1px solid #EEEEEE;
    }
    fieldset {
        float: left;
        clear: both;
        width: 400px;
        padding: 0px;
        margin-left: 300px;
        border: 1px solid #CCCCCC;
    }
    fieldset a {
        float: left;
        width: 80px;
    }
    style.css
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>查看商品</title>
                <script src="http://www.jq22.com/jquery/jquery-1.10.2.js"></script>
                <script type="text/javascript" src="js/jquery.jqzoom.js"></script>
                <script type="text/javascript">                
                    $(document).ready(function(){
                    $(".jqzoom").jqueryzoom({
                                    xzoom: 250, //zooming div default width(default width value is 200)
                                    yzoom: 250, //zooming div default width(default height value is 200)
                                    offset: 10, //zooming div default offset(default offset value is 10)
                                    position: "right" //zooming div position(default position value is "right")
                                });
                    });
                </script>
                <link rel="stylesheet" href="style/style.css" type="text/css" media="screen" />
                <link rel="stylesheet" href="style/jqzoom.css" type="text/css" media="screen" />
    
        </head>
        <body>
        <div id="wrapper">
    
    
    
            <div id="maincontent">
                                    
                    <h3 style="float:left;clear:both;">图片</h3>
                    <p>请移动鼠标到图片上便于仔细查看外观</p>
                <div style="float:left;100%;clear:both;">
                <div class="jqzoom"><img src="img/me_small.jpg"  alt="scarpa"  jqimg="img/me_big.jpg"></div>
                    
    
                    
                    <p><div class="jqzoom"  style='margin-right:5px;'><img src="img/shoe1_small.jpg"  alt="scarpa"  jqimg="img/shoe1_big.jpg"></div>
                    <div class="jqzoom" style='margin-right:5px;' ><img src="img/shoe3_small.jpg"  alt="scarpa"  jqimg="img/shoe3_big.jpg"></div>
                    <div class="jqzoom"><img src="img/shoe4_small.jpg"  alt="scarpa"  jqimg="img/shoe4_big.jpg"></div></p>
                    </div>
             <span style="float:left;100%;height:200px;">&nbsp;</span>
            </div>
        </div>
    
        </body>
    </html>
    放大镜效果html代码

    第二题

    实现手风琴效果

    分析:首先用span元素创建章节的标题,然后在每个span元素的后面添加一个层,用于显示标题对应的内容,该层添加四个A标记.

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>手风琴效果</title>
            <style type="text/css">
                #menu{
                    width: 300px;
                }
                #menu span{
                    background: gray;
                    color: #FFFFFF;
                    cursor: pointer;
                    display: block;
                }
                #menu .hidden{
                    display: none;
                }
            </style>
            <script src="js/jquery-3.2.1.min.js" type="text/javascript"></script>
            <script type="text/javascript">
                $(function(){
                    $("#menu>span").click(function(){
                        //隐藏所有内容
                        $("#menu>div").hide();
                        //显示选中标题的内容
                        $("#div_"+this.id).show();
                        
                        
                    });
                    
                    
                });
            </script>
        </head>
        <body>
            <div id="menu">
                <span id="m1">第一章</span>
                <div id="div_m1">
                    <a href="#">A</a><br />
                    <a href="#">B</a><br />
                    <a href="#">C</a><br />
                    <a href="#">D</a><br />
                </div>
                <span id="m2">第二章</span>
                <div id="div_m2" class="hidden">
                    <a href="#">1</a><br />
                    <a href="#">2</a><br />
                    <a href="#">3</a><br />
                    <a href="#">4</a><br />
                </div>
                <span id="m3">第三章</span>
                <div id="div_m3">
                    <a href="#">!</a><br />
                    <a href="#">@</a><br />
                    <a href="#">#</a><br />
                    <a href="#">$</a><br />
                </div>
                
            </div>
        </body>
    </html>
    手风琴效果代码

    第三题

     实现表格内容过滤显示

    分析

    需要使用":contains":匹配包含给定文本的元素,filter():筛选出于指定表达式匹配的元素集合

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style type="text/css">
                table{
                    border: 0;
                    border-collapse: collapse;
                }
                div{
                    font: normal 12px/17px arial;
                }
                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;
                    width: 100px;
                }
            </style>
            <script type="text/javascript" src="js/jquery-3.2.1.min.js" ></script>
            <!--<script type="text/javascript">
                $(function(){
                    $("#filterName").keyup(function(){
                        $("table>tbody>tr")
                        .hide()
                        .filter()
                        .filter(":contains('" + ($(this).val()) + "')")
                        .show();
                        
                    });
                    
                });
            </script>-->
             <script type="text/javascript">
                $(function() {
                  $('#filterName').keyup(function(){
                    $('table tbody tr').hide()
                      .filter(":contains('" +($(this).val()) + "')").show();
                  }).keyup();//DOM加载完时,绑定事件完成之后立即触发
                });
              </script>
        </head>
        <body>
            <div>
                <br />
                筛选:<input id="filterName" />
                <br />
            </div>
            <table>
                <thead>
                    <th>姓名</th>
                    <th>性别</th>
                    <th>暂住地</th>
                </thead>
                <tbody>
                    <tr>
                        <td>张山</td>
                        <td></td>
                        <td>浙江宁波</td>            
                    </tr>
                    <tr>
                        <td>李四</td>
                        <td></td>
                        <td>浙江杭州</td>            
                    </tr>
                    <tr>
                        <td>王五</td>
                        <td></td>
                        <td>湖南长沙</td>            
                    </tr>
                    <tr>
                        <td>张思</td>
                        <td></td>
                        <td>甘肃兰州</td>            
                    </tr>
                    <tr>
                        <td>赵柳</td>
                        <td></td>
                        <td>浙江宁波</td>            
                    </tr>
                    <tr>
                        <td>张一</td>
                        <td></td>
                        <td>浙江宁波</td>            
                    </tr>
                    <tr>
                        <td>张二</td>
                        <td></td>
                        <td>浙江宁波</td>            
                    </tr>
                    <tr>
                        <td>张三</td>
                        <td></td>
                        <td>浙江宁波</td>            
                    </tr>
                    <tr>
                        <td>张四</td>
                        <td></td>
                        <td>浙江宁波</td>            
                    </tr>
                    
                    
                </tbody>
                
            </table>
        </body>
    </html>
    实现表格内容过滤显示

  • 相关阅读:
    【SQL基础】三种类别语句
    【安装eclipse, 配置java环境教程】 编写第一个java程序
    【c++错误】类的语法错误 error c2533:constructors not allowed a return type(构造函数不允许返回一个类型)
    【经典算法大全】收集51种经典算法 初学者必备
    【费式搜寻法】
    【插补搜寻法】
    【基数排序(桶排序)】
    【字串核对】
    【老鼠走迷宫二】
    【稀疏矩阵】
  • 原文地址:https://www.cnblogs.com/faded8679/p/10518435.html
Copyright © 2011-2022 走看看