zoukankan      html  css  js  c++  java
  • Unit01: jQuery概述 、 jQuery选择器 、 jQuery操作DOM

        Unit01: jQuery概述 、 jQuery选择器 、 jQuery操作DOM    

    使用jQuery放大字体:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <script src="../js/jquery-1.11.1.js"></script>
    <!-- 自定义的js必须写在jQuery引入之后 -->
    <script>
        function bigger() {
            //获取第1个p的字号(16px)
            var size = $("p:eq(0)").css("font-size");
            //去掉单位px,便于增加字号
            size = size.replace("px","");
            //字号+1,再设置给所有的p
            $("p").css("font-size",++size+"px")
        }
    </script>
    </head>
    <body>
        <input type="button" value="+"
            onclick="bigger();"/>
        <p>jQuery是一个轻量级的js框架</p>
        <p>它提供了简洁的API,极大的简化了js编程</p>
        <p>它主要封装了DOM操作的API</p>
    </body>
    </html>

    使用jQuery,点击图片后放大,缩小

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <script src="../js/jquery-1.11.1.js"></script>
    <script>
        function prt() {
            var ps = $("p");
            console.log(ps);
            for(var i=0;i<ps.length;i++) {
                console.log(ps[i].innerHTML)
            }
        }
        function chg(img) {
            if($(img).width()==218) {
                //变大
                $(img).width(250).height(250);
            } else {
                //变小
                $(img).width(218).height(218);
            }
        }
    </script>
    </head>
    <body>
        <input type="button" value="打印"
            onclick="prt();"/>
        <p>jQuery对象可以调用jQuery方法</p>
        <p>DOM对象可以调用DOM方法</p>
        <p>jQuery对象本质上是对DOM数组的封装</p>
        <div>
            <img src="../images/01.jpg" 
                onclick="chg(this);"/>
            <img src="../images/02.jpg"
                onclick="chg(this);"/>
            <img src="../images/03.jpg"
                onclick="chg(this);"/>
        </div>
    </body>
    </html>

    选择器知识点:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <script src="../js/jquery-1.11.1.js"></script>
    <script>
        //页面加载后自动调用此匿名函数.
        //等价于window.onload=function(){}
        $(function(){
            //1.基本选择器
            //和CSS基本选择器一样,略
            //2.层次选择器
            //前2个和CSS派生选择器一样,略
            console.log($("#gz+li"));
            //3.过滤选择器
            //3.1基本过滤(*)
            console.log($("li:first"));
            console.log($("li:lt(2)"));
            console.log($("li:odd"));
            console.log($("li:not(#gz)"));
            //3.2内容过滤
            console.log($("li:contains('京')"));
            //3.3可见性过滤
            console.log($("li:hidden"));
            //3.4属性过滤
            console.log($("li[id]"));
            //3.5状态过滤
            console.log($("input:disabled"));
            console.log($("input:checked"));
            //4.表单选择器
            console.log($(":radio"));
        });
    </script>
    </head>
    <body>
        <ul>
            <li>北京</li>
            <li>上海</li>
            <li id="gz">广州</li>
            <li>深圳</li>
            <li>南京</li>
            <li>天津</li>
            <li style="display:none;">杭州</li>
        </ul>
        <!-- 
            readonly:只读,但数据依然可以提交到服务器.
            disabled:不可用,数据将无法提交到服务器.
         -->
        <p>
            <input type="text" disabled/>
        </p>
        <p>
            <input type="password"/>
        </p>
        <p>
            <input type="radio" name="sex" checked/><input type="radio" name="sex"/></p>
    </body>
    </html>

    jQuery操作DOM知识点:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <style>
        .big {
            font-size: 50px;
        }
        .important {
            color: red;
        }
    </style>
    <script src="../js/jquery-1.11.1.js"></script>
    <script>
        $(function(){
            //1.读写节点
            //1)html()==innerHTML
            console.log($("p:first").html());
            $("p:first").html("1.jQuery支持<u>读写</u>节点");
            //2)text()==innerText
            //3)val()==value
            console.log($(":button:first").val());
            $(":button:first").val("BBB");
            //4)attr()==setAttribute()+getAttribute()
            console.log($("img:first").attr("src"));
            $("img:first").attr("src","../images/02.jpg");
            //3.查询某节点的亲戚
            //假设别人传给我如下节点
            var gz = $("#gz");
            var ul = $("ul");
            //假设我处理了该节点,又要处理它的亲戚
            console.log(gz.parent());
            console.log(gz.prev());
            console.log(gz.siblings());
            console.log(ul.find("li:not(li[id])"));
            //4.样式操作
            $("p:first").addClass("big").addClass("important");
            $("p:first").removeClass("big").removeClass("important");
            console.log($("p:first").hasClass("big"));
        });
        //切换样式:
        //判断有没有该样式,有则删除,无则增加
        function chg() {
            $("p:first").toggleClass("important");
        }
        //2.增删节点
        //2.1增加
        function f1() {
            var li = $("<li>杭州</li>");
            $("ul").prepend(li);
        }
        //2.2插入
        function f2() {
            var li = $("<li>南京</li>");
            $("#gz").after(li);
        }
        //2.3删除
        function f3() {
            $("li:last").remove();
        }
    </script>
    </head>
    <body>
        <p>1.jQuery支持<b>读写</b>节点</p>
        <p>2.jQuery支持<b>增删</b>节点</p>
        <p><input type="button" value="AAA"/></p>
        <p><img src="../images/01.jpg"/></p>
        <p>
            <input type="button" value="增加"
                onclick="f1();"/>
            <input type="button" value="插入"
                onclick="f2();"/>
            <input type="button" value="删除"
                onclick="f3();"/>
        </p>
        <ul>
            <li>北京</li>
            <li>上海</li>
            <li id="gz">广州</li>
            <li>深圳</li>
            <li>天津</li>
        </ul>
        <p>
            <input type="button" value="切换"
                onclick="chg();"/>
        </p>
    </body>
    </html>

     广告收起案例:

      1.点击按钮收起

      2.自动收起

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <style>
        #gg {
            border: 1px solid red;
            height: 300px;
        }
        #gg input {
            float: right;
            margin: 10px;
        }
    </style>
    <script src="../js/jquery-1.11.1.js"></script>
    <script>
        $(function(){
            //给按钮x绑定单击事件
            $("#gg :button").click(function(){
                //让广告区域右下向上收起直到消失
                $("#gg").slideUp(500);
            });
            //页面加载后,延迟3S自动点击按钮x,收起广告
            setTimeout(function(){
                $("#gg :button").trigger("click");
            },3000);
        });
    </script>
    </head>
    <body>
        <div id="gg">
            <input type="button" value="x"/>
        </div>
    </body>
    </html>
    up_image.html

    图片显示,隐藏,移动案例

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <style>
        #d1 {
            width: 200px;
            height: 200px;
            background-color: red;
            /*动画基于定位*/
            position: relative;
        }
    </style>
    <script src="../js/jquery-1.11.1.js"></script>
    <script>
        function f1() {
            $("#d1").show(3000);
        }
        function f2() {
            //第2个参数是函数,该函数在动画结束时被调用.
            //这样的函数我们称之为回调函数.
            //回调函数:逻辑完成后自动调用的函数.
            $("#d1").hide(3000,function(){
                console.log("OVER");
            });
            //动画底层的实现原理:
            //通过定时器不断的修改元素的样式就是动画.
            //定时器相当于线程,所以动画方法相当于启动
            //了支线程,当前方法f2相当于主线程,二者并发
            //执行.主线程f2启动支线程后不等待,立刻执行
            //下一行代码,而支线程3秒后才执行完成.
            console.log("over");
        }
        $(function(){
            $("#d1").hover(
                function(){
                    $(this).animate({"left":"20px"},500);
                },
                function(){
                    $(this).animate({"left":"0"},500);
                }
            );
        });
    </script>
    </head>
    <body>
        <p>
            <input type="button" value="显示"
                onclick="f1();"/>
            <input type="button" value="隐藏"
                onclick="f2();"/>
        </p>
        <div id="d1"></div>
    </body>
    </html>
  • 相关阅读:
    2017 Multi-University Training Contest 2.Balala Power!(贪心)
    2017ICPCECIC C.A math problem(高次剩余)
    Atcoder 068E
    51nod 1385 凑数字(贪心+构造)
    cf round #418 div2 D. An overnight dance in discotheque(贪心)
    cf round #418 div2 C. An impassioned circulation of affection(暴力)
    cf round #424 div2 E. Cards Sorting(线段树)
    Atcoder 077E
    hdu 6162 Ch’s gift(树链剖分+主席树)
    Educational Codeforces Round 26 D. Round Subset(dp)
  • 原文地址:https://www.cnblogs.com/tangshengwei/p/6399746.html
Copyright © 2011-2022 走看看