jQuery

2020-08-25  本文已影响0人  Daeeman

jQuery概述

jQuery由美国人John Resig于2006年初创建,至今已吸引了来自世界各地的众多javascript高手加入其team。

jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。

jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需使用选择器查找即可。

安装和使用

通过访问http://www.jquery.com获得最新的jQuery版本,当前最新版本为:3.4.1
jQuery库类型说明:

  • 完全版jquery-3.4.js 用于测试和开发(未压缩,是可读的代码)
  • 压缩版jquery-3.4.min.js 用于实际的网站中,已被精简和压缩

两个版本代码相同,只是在压缩版中去掉了相关注释

入口函数

jQuery 入口函数:

$(document).ready(function(){
    // 执行代码
});
或者简写为
$(function(){
    // 执行代码
});

JavaScript 入口函数:

window.onload = function () {
    // 执行代码
}

jQuery 入口函数与 JavaScript 入口函数的区别:

image.png
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>入口函数</title>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
        $(function(){
            // var h1=$("#hh");
            // h1 赋值为 jQuery选择id为hh的元素
            alert($("#hh").html())

        })
        // $ 是jQuery的意思
        // $() jquery  的主方法
        // $(function(){})
        // 等待整个HTML文档加载完毕再执行匿名函数里面的方法
        // jQuery入口函数
        // $("字符串")  jQuery  css选择器
        // .html      获取元素标签中间内容
    </script>
</head>
<body>
    <h1 id="hh">你好,明天</h1>
</body>
</html>

jQuery对象与DOM对象转换

定义DOM对象
在jQuery库中,$就是jQuery的一个简写形式。
如:$(“#id”) 等价于jQuery(“#id”)

⚠️ 在编写JavaScript时应尽量避免使用jQuery和$定义变量或方法,以免在同时使用JavaScript和jQuery时发生冲突。

 var id=document.getElementById(“id”);
 var $id=$(“#id”);

说明:jQuery对象是一个数组对象,可以通过[index]的方法得到相应的DOM对象

jQuery事件方法初探

jQ 事件和js的事件名称是一致的,事件名不带on

 $(“button”).click(function(){
     // 事件操作
 })

JQ中显示隐藏对象

// $(".block").hide()   隐藏
// $(".block").fadeOut();  淡出
// $(".block").slideUp(); 向上滑出
// $(".block").show();  显示
// $(".block").fadeIn();  淡入 
// $(".block").slideDown(); 向下滑入
// $(".block").fadeToggle();  切换淡入淡出
$(".block").slideToggle("slow");  //切换滑入滑出

高级用法:速度与回调函数
fadeIn(speed,[callback] )   
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>入口函数</title>
    <style>
        .block{
            width: 500px;
            height: 500px;
            background-color: yellow;
            text-align: center;
            display: none;
        }
    </style>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
        // 单击按钮弹出“你好”
        // 单击按钮隐藏block     淡出
        //  单击按钮显示block
        //  单击按钮切换显示或者隐藏
        $(function(){
            $("button").click(function(){
                // alert("哈喽hello");
                // $(".block").hide()           隐藏
                // $(".block").fadeOut();       淡出
                // $(".block").slideUp();       向上滑出
                // $(".block").show();          显示
                // $(".block").fadeIn();        淡入 
                // $(".block").slideDown();     向下滑入
                // $(".block").fadeToggle();    切换淡入淡出
                $(".block").slideToggle("slow");        //切换滑入滑出        
            })
        })  
    </script>
</head>
<body>
    <button>点我呀</button>
    <div class="block">
        你能拿我怎么样
    </div>
</body>
</html>

操作元素中的内容:

.html(“str”)  设置元素的里面的内容 可用带html标签
.text(“str”)  设置元素的里面的内容 可用不带html标签
.val(“str”)   设置表单的值
.html()    .text()    .val()
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>入口函数</title>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
    // 获取sp里面内容
    // 中国改成祖国
    // 修改sp里面的内容为  欢度祖国70周年生日  70要
    $(function(){
        // alert($(".sp").text())
        $(".sp").html("欢度祖国<i>70</i>周年生日")
    })

    // html  获取标签内html内容
    // text  获取标签内的文本(过滤所有的html标签)
    // text()没有参数是获取内容,有参数是设置内容
    // html()没有参数是获取html内容,有参数是设置html内容

    </script>
</head>
<body>
    <p class="sp" title="选择">你好<b>中国</b>,祝你幸福</p>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>入口函数</title>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
        // 获取表单的值
        $(function(){
            // alert($("input").val())
            $("input").val("0.618");
        })
        // val()括号里面没有参数的时候  获取表单的值,有参数是设置表单的值
    </script>
</head>
<body>
    <input type="text" value="神奇的值">
</body>
</html>

样式操作

.css(“属性名”,”属性值”)
.css({“属性名1”:”属性值1”,”属性名2”:”属性值2”,……})
.css(“属性名”)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>添加</title>
    <style>
        .block{
            background: #00f;
            width: 500px;
            height: 500px;
        }
    </style>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
    // 获取block的文字大小
    // 单击按钮  让block的文字变大
    // 单击按钮  让block的文字在原有基础上增大5px
    // 单击按钮  让block 文字变成22px  粗体 绿色
        $(function(){
            $("button")
                .click(function(){
                    // $(".block").css("font-size","22px")
                    // $(".block").css("font-size","+=5")
                    // $(".block")
                    // .css("font-size","22px")
                    // .css("font-weight","900")
                    // .css("color","green")
                    $(".block").css({
                        "font-size":"22px",
                        "font-weight":"900",
                        "color":"green"
                    })

                })
                // css(属性名) 获取css的属性值
                // css(属性名,属性值) 修改元素的css
                // css支持链式写法,如果选择的对象一致的,可以直接点+下一行内容
                // css支持对象表示方法
        })
    </script>
</head>
<body>
    <button>按钮</button>
    <div class="block">
        block内容
    </div>
</body>
</html>

类操作

.addClass(“类名1 类名2 ……”)  多个类名之间用空格隔开
.removeClass(“类名”)
.toggleClass(“”)  
.toggleClass(“类名”,true/false)  用来判断样式类添加还是移除的 布尔值
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>添加</title>
    <style>
        .block{
            background: #00f;
            width: 500px;
            height: 500px;
        }
        .biger{
            font-size:22px;
            font-weight: 900;
            color: green;
        }
    </style>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
    // 单击按钮 给block添加个class
    // 单击按钮 已经有biger了删除biger类
    // 单击按钮 切换biger
        $(function(){
            $("button")
                .click(function(){
                    // $(".block").addClass("biger");
                    // $(".block").removeClass("biger");
                    $(".block").toggleClass("biger");

                })
                // addClass(类名) 添加class 不要点
                // removeClass(类名)移除class
                // toggleClass切换 class
        })
    </script>
</head>
<body>
    <button>按钮</button>
    <div class="block">
        block内容
    </div>
</body>
</html>

属性操作

attr("属性名");  .attr(“title”) 获取元素的title属性
.attr(“属性名”,”属性值”)
.attr(“title”,”我爱我的祖国”)  设置元素的title属性为“我爱我的祖国”
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>添加</title>
    <style>
        .block{
            background: #00f;
            width: 500px;
            height: 500px;
        }
        .biger{
            font-size:22px;
            font-weight: 900;
            color: green;
        }
    </style>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
    // 单击按钮 获取h1的title属性
    // 单击按钮 设置h1的title属性为 国庆7天乐逍遥
        $(function(){
            $("button")
            .click(function(){

                // var t = $("h1").arrt("title");
                // alert(t)
                $("h1").arrt("title","国庆7天乐逍遥");    
            })
        })
        // attr(属性)获取元素的属性
    </script>
</head>
<body>
    <button>按钮</button>
    <h1 title="普天同庆70周年华诞">我爱我的祖国</h1>
</body>
</html>

表单属性操作prop

prop("属性名");  .prop(“checked”) 获取表单的选中属性
.prop(“属性名”,”属性值”)
.attr(“disabled”,”true”)  设置表单元素不可用
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>添加</title>
    <style>
        
    </style>
    <script src="js/jquery-3.3.1.js"></script>
    <script>
        // 勾选同意按钮   按钮才可以点击
        // 如果g的值为选中状态  按钮才可以用
        $(function(){
            $("#g").click(function(){
                var v = $("#g").prop("checked");
                // 通过prop获取表单的checked属性值
                if(v==true){
                    $(".btn").prop("disabled",false)
                    // 如果是勾选的  让按钮可以使用
                }else{
                    $(".btn").prop("disabled",true)
                }
                // 如果非勾选  让按钮不可以使用
            })
            // 给按钮添加一个单价事件弹出  响应文字
            $(".btn").click(function(){
                alert("我可以被点击了");
            })
        })
        // attr  获取的值是初始值  表单的值是动态的要有  prop
    </script>
</head>
<body>
    <p><input type="checkbox" id="g">阅读并同意条款</p>
    <p><input type="button" value="提    交" class="btn" disabled=""></p>
</body>
</html>
上一篇下一篇

猜你喜欢

热点阅读