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>

 

posted @ 2017-02-15 00:06  唐胜伟  阅读(228)  评论(0编辑  收藏  举报