美文网首页
jQuery_01基础教程

jQuery_01基础教程

作者: tzktzk1 | 来源:发表于2023-11-14 20:01 被阅读0次

jQuery 简介

jQuery是一个快速,轻量级且功能丰富的JavaScript库,它基于“少写多做”的原则。
jQuery简化了HTML文档的遍历,事件处理,动画和Ajax交互,从而实现了快速的Web开发。
jQuery的目的是使在网站上使用JavaScript更加容易。

<!DOCTYPE html>
<html>
    <title>JQuery入门示例</title>
    <head>
        <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
        <script>
            $(document).ready(function(){
              $("p").click(function(){
                $(this).hide();
              });
            });
        </script>
    </head>
    <body>
        <p>如果您单击我,我将会消失。</p>
        <p>如果您单击我,我将会消失。</p>
        <p>点击我也会消失!</p>
    </body>
</html>
jQuery的优点
    如果您不熟悉jQuery,您可能想知道是什么使jQuery如此特别。
    jQuery简化了JavaScript中的许多复杂内容,例如AJAX调用和DOM操作。
    jQuery库包含以下功能:
        HTML / DOM操作
        CSS操作
        事件处理
        效果和动画
        AJAX支持
        实用工具(Utilities)
        插件(Plugins)
        跨浏览器支持
    信息:在JavaScript中,您通常需要编写几行代码来选择和操作HTML文档中的元素,但是使用jQuery强大的选择器机制,您可以遍历DOM树并以简单有效的方式选择元素以执行任何操作。
jQuery可以做什么?
    您可以使用jQuery做更多的事情:
        jQuery可以轻松选择元素
        jQuery可以轻松更改元素的样式(CSS)和位置
        jQuery可以轻松操纵DOM元素及其属性
        jQuery可以轻松创建效果,例如显示或隐藏元素,滑动过渡等
        jQuery可以使用更少的代码轻松创建复杂的CSS动画
        jQuery可以轻松地遍历整个DOM树以查找任何元素
        jQuery只需一行代码即可轻松地对元素执行多项操作
        jQuery可以轻松获取或设置HTML元素的尺寸
    列表并没有结束,您可以使用jQuery完成许多其他有趣的事情。
需要的基础知识
    在开始学习jQuery之前,您应该具有以下基本知识:
        HTML
        CSS
        JavaScript

jQuery 入门

将jQuery添加到您的网页,有两种使用jQuery的方法:
    1.下载jQuery库
        有两种版本的jQuery可下载:
            压缩版本-适用于您的实时网站,因为它已被缩小和压缩
            未压缩版本-用于测试和开发(未压缩且可读的代码)
        可以从以下网址下载这两个版本:https : //jquery.com/download/。          
    2.包含CDN中的jQuery
        Staticfile CDN:
        <head>
          <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
        </head>
        Microsoft CDN:
        <head>
          <script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.4.1.min.js"></script>
        </head>
使用jQuery CDN的优势:

访问另一个站点时,许多用户已经从Staticfile或Microsoft下载了jQuery。因此,当他们访问您的网站时,将从缓存中加载该文件,从而缩短了加载时间。而且,大多数CDN都会确保用户一旦请求文件,就会从距离他们最近的服务器提供文件,这也将缩短加载时间。

jQuery 语法

jQuery语法是通过使用HTML元素选择器进行的,并对元素执行一些操作。

jQuery基本语法:
$(selector).action()
    $ 标志定义jQuery
    (selector) 用于查找HTML元素
    action() 用于对元素执行操作
示例:
    $(this).hide():用于隐藏当前元素
    $("p").hide():用于隐藏所有<p>元素
    $(".para").hide():用于隐藏所有带有class="para"的元素
    $("#para").hide():用于隐藏id="para"的元素
文档就绪事件
    您可能已经注意到我们示例中的所有jQuery方法都在document.ready事件中:
    $(document).ready(function(){
      // jQuery方法(DOM就绪时执行)
      });
    这是为了防止文档加载完成之前运行任何jQuery代码。
    正确的做法是等待文档完全加载并准备就绪,然后再使用它。
    这也使您可以在文档正文的开头部分获取JavaScript代码。
    
    jQuery还为document.ready事件提供了一个更短的方法:
        $(function(){
          // jQuery方法,与以上写法效果相同
          });
    在$(document).ready()更容易阅读代码时理解。
    注意:这$(document).ready()是一个事件,该事件用于使用jQuery安全地操纵页面(此事件中的代码仅在DOM准备就绪后才运行)。

jQuery 选择器

jQuery的最基本概念是“选择一些元素并对其进行处理”。
jQuery选择器使您可以“查找”(或选择)网页中的HTML元素。
jQuery支持大多数CSS3选择器,以及一些非标准选择器。
jQuery中的所有选择器都以美元符号和括号:开头$()。

元素选择器
    jQuery元素选择器可用于根据元素名称选择元素。
    您可以在页面上选择所有<p>元素,如下所示:
        $("p")
    当用户单击按钮时,以下jQuery代码将选择并突出显示所有<p>元素:
    示例
        $(document).ready(function(){
          $("button").click(function(){
            $("p").css("background-color", "yellow");
          });
        });
id选择器
    jQuery #id选择器使用HTML标记的id属性来查找特定元素。
    元素的ID在页面中应该是唯一的,因此ID选择器用于选择一个唯一的元素。
    要查找具有特定ID的元素,请写一个井号(#)字符,后跟HTML元素的ID:
        $("#demo")
    当用户单击按钮时,以下jQuery代码将选择并突出显示具有id="demo"的元素:
    示例
        $(document).ready(function(){
          $("button").click(function(){
            $("#demo").css("background-color", "yellow");
          });
        });
.class选择器
    jQuery .class选择器查找具有特定类名的元素。
    要查找具有特定类的元素,请写一个句点(.)字符,后跟类的名称:
        $(".demo")
    当用户单击按钮时,以下jQuery代码将选择并突出显示class="demo"的所有元素:
    示例
        $(document).ready(function(){
          $("button").click(function(){
            $(".demo").css("background-color", "yellow");
          });
        });
多个选择器
    您可以根据需要选择多个选择器。只需用逗号分隔选择器。
    多重选择器选择所有指定选择器的组合结果:
        $("selector1, selector2, selectorN")
    以下jQuery代码将选择每个<h2>,<div>和<span>元素:
    示例
        $(document).ready(function(){
          $("h2, div, span").css("background-color", "lightgreen");
        });
jQuery选择器的示例
    jQuery提供了多种选择特定HTML元素的方法。

    句法                  描述
    $("*")                  选择所有元素  
    $(this)                 选择当前元素  
    $("p.demo")             选择所有带有class="demo"的<p>元素    
    $("p:first")            选择第一个<p>元素  
    $("div p:first-child")  选择每个<div>元素的第一个<p>元素    
    $("[target]")           选择具有target属性的每个元素   
    $("a[href='/CSS3/']")   选择每个<a>元素的href属性值等于“ /CSS3/”    
    $("a[href!='/CSS3/']")  选择每个<a>元素的href属性值不等于“ /CSS3/”   
    $(":text")              选择类型为“text”的所有<input>元素 
    $("tr:even")            选择所有偶数<tr>元素    
    $("tr:odd")             选择所有奇数<tr>元素

jQuery 事件方法

事件是Web应用程序可以检测到的操作。
jQuery提供了将事件处理程序附加到选择的简单方法。
发生事件时,将执行提供的函数。

事件方法的jQuery语法

    在jQuery中,大多数DOM事件具有等效的jQuery方法。
    要将点击事件分配给页面上的所有段落,请执行以下操作:
        $("p").click();
    下一步是定义事件发生时应发生的情况。您必须将一个函数传递给事件:
        $("p").click(function(){
          // 需要执行的动作...
          });
    此示例在单击页面时隐藏页面上的段落:
    示例
        $("p").click(function(){
          $(this).hide();
        });

    本示例将一个“changeSize”函数附加到click事件:
    示例
        $(document).ready(function(){
          $("p").click(changeSize);
        });
        function changeSize() {
          $(this).animate({fontSize: "+=5px"});
        }

常用的jQuery事件方法

$(document).ready()
        jQuery $(document).ready()方法指定在DOM完全加载时要执行的函数。
        以下示例在加载DOM时显示一条消息:
        示例
            $(document).ready(function(){
              $("p").text("现在已经加载了DOM,可以对其进行操作.");
            });
click()
        jQuery click()方法将事件处理程序函数附加到所选元素。
        当用户单击该元素时,将执行该函数:
        示例
            $("p").click(function(){
              $(this).css({"background-color":"#007FFF", "color":"white"});
            });
mouseenter()
        jQuery mouseenter()方法将事件处理程序函数附加到所选元素。
        当鼠标指针进入该元素时,将执行该函数:
        示例
            <head>
                <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
                <script>
                    $(document).ready(function(){
                      $("p").mouseenter(function(){
                        $(this).css("background-color", "yellow");
                      });
                      $("p").mouseleave(function(){
                        $(this).css("background-color", "lightblue");
                      });
                    });
                </script>
            </head>
            <body>
                <p>将鼠标指针移到该段落上。</p>
            </body>
mouseleave()
        jQuery mouseleave()方法将事件处理程序函数附加到所选元素。
        当鼠标指针离开该元素时,将执行该函数:
        示例
            $("p").mouseleave(function(){
              $(this).css("background-color", "lightblue");
            });
mousedown()
        jQuery mousedown()方法将事件处理程序函数附加到所选元素。
        当用户在元素上按下鼠标按钮时,将执行该函数:
        示例
            $("p").mousedown(function(){
              $(this).after("<p style='color:red;'>按下鼠标键</p>");
            });
mouseup()
        jQuery mouseup()方法将事件处理程序函数附加到所选元素。
        当鼠标悬停在该元素上时,释放鼠标按钮,将执行该函数:
        示例
            $("p").mouseup(function(){
              $(this).after("<p style='color:green;'>释放鼠标键</p>");
            });
keydown()
        jQuery keydown()方法将事件处理程序函数附加到所选元素。
        当用户按下键盘上的键时,将执行该函数:
        示例
            $("input").keydown(function(event){
              $(this).css("background-color", "yellow");
              $("span").text(event.type);
            });
keyup()
        jQuery keyup()方法将事件处理程序函数附加到所选元素。
        当用户释放键盘上的键时,将执行该函数:
        示例
            $("input").keyup(function(event){
              $(this).css("background-color", "lightblue");
              $("span").text(event.type);
            });
hover()
        jQuery hover()方法具有两个函数,并且是mouseenter()和mouseleave()方法的组合。
        下面的示例将鼠标指针悬停在上方时更改所有<p>元素的背景颜色:
        示例
            $("p").hover(function(){
              $(this).css("background-color", "yellow");
              }, function(){
              $(this).css("background-color", "lightblue");
            });
on()方法
    jQuery提供了on()一种方法来响应所选元素上的任何事件。
    使用on()方法,我们可以为所选元素附加一个或多个事件处理程序。
    下面的示例将click事件附加到所有<p>元素:
    示例
        $("p").on("click", function(){
          $(this).css("background-color", "coral");
        });
        
    下面的示例将mouseenter事件附加到所有<p>元素:
    示例
        $("p").on("mouseenter", function(){
          $(this).css("background-color", "coral");
        });

    以下示例将多个事件处理程序附加到<div>元素:
    示例
        $("div").on("mouseenter mouseleave click", function(){
          $(this).text(Math.random());
        });
off()方法
    jQuery off()  方法删除该on()方法附带的一个或多个事件处理程序。
    下面的示例从<div>元素中删除mousemove事件:
    示例
        $("button").click(function(){
          $("div").off("mousemove");
        });

事件对象

    jQuery的事件系统根据W3C标准标准化事件对象。
    确保将事件对象传递给事件处理程序。
    每个事件处理函数都会接收一个事件对象,其中包含许多属性和方法。
    示例
        $("div").on("click", function(event){
          alert("Event type is " + event.type);
          alert("Target : " + event.target.innerHTML);
        });

下表显示了所有事件对象的方法和属性:

    方法/属性                               描述
    event.currentTarget                     事件冒泡阶段中的当前DOM元素
    event.data                              包含绑定当前执行处理程序时传递给事件方法的可选数据
    event.delegateTarget                    返回附加当前调用的jQuery事件处理程序的元素
    event.isDefaultPrevented()              返回是否event.preventDefault()为事件对象调用
    event.isImmediatePropagationStopped()   返回是否event.stopImmediatePropagation()为事件对象调用
    event.isPropagationStopped()            返回是否event.stopPropagation()为事件对象调用
    event.metakey                           表示事件触发时是否按下了META键
    event.namespace                         返回触发事件时指定的名称空间
    event.pageX                             返回鼠标相对于文档左边缘的位置
    event.pageY                             返回相对于文档顶部边缘的鼠标位置
    event.preventDefault()                  阻止浏览器执行所选元素的默认操作
    event.relatedTarget                     返回鼠标移动时要输入或退出的元素
    event.result                            包含由指定事件触发的事件处理程序返回的最后一个/上一个值
    event.stopImmediatePropagation()        防止其他事件处理程序被调用
    event.stopPropagation()                 防止事件使DOM树冒泡,防止任何父处理程序收到该事件的通知
    event.target                            返回哪个DOM元素触发了事件
    event.timeStamp                         返回创建事件的时间(相对于纪元的毫秒数)
    event.type                              返回触发了哪种事件类型
    event.which                             返回事件按下的键盘键或鼠标按钮

相关文章

网友评论

      本文标题:jQuery_01基础教程

      本文链接:https://www.haomeiwen.com/subject/qaxxwdtx.html