货物

JQuery,它是什么以及我们可以用 JavaScript 库做什么

jQuery 是一个基于原理的快速、轻量级和功能丰富的 JavaScript 库 “少写,多做” 。 JQuery API 简化了 HTML 文档的管理和维护、事件管理、向网页添加动画效果。它兼容所有主流浏览器,如 Chrome、Firefox、Safari、Edge。

使用 jQuery 创建基于 Ajax 的应用程序变得非常简单和快速。

jQuery 最初由 John Resig 于 2006 年初创建。jQuery 项目目前由分布式开发人员组作为开源项目维护和维护。

使用 jQuery 可以节省大量时间和精力。 所以将此站点添加到您的收藏夹并继续阅读

你可以用 jQuery 做什么

您可以使用 jQuery 做更多的事情。

  • 您可以方便地选择HTML页面元素,读取或修改属性;
  • 您可以轻松创建显示或隐藏元素、过渡、滚动等效果;
  • 您可以使用更少的代码行轻松创建复杂的 CSS 动画;
  • 您可以轻松地操作 DOM 元素及其属性;
  • 您可以轻松实现 Ajax 以实现客户端和服务器之间的异步数据交换;
  • 您可以轻松遍历所有 DOM 树来定位任何元素;
  • 您可以使用一行代码轻松地对一个元素执行多个操作;
  • 您可以轻松获取或设置 HTML 元素的大小。

列表并没有就此结束,您可以使用 jQuery 做很多其他很酷的事情。

使用 jQuery 的好处

选择使用 jQuery 有几个优点:

  • 节省大量时间:通过使用 jQuery 的内置效果和选择器,您可以节省大量时间和精力,专注于其他方面的开发;
  • 简化常见的 JavaScript 任务——jQuery 极大地简化了常见的 JavaScript 任务。 现在,您可以使用更少的代码轻松创建功能丰富的交互式网页。 典型的例子是Ajax实现刷新页面内容,不刷新;
  • 简单性:jQuery 非常易于使用。 任何具有 HTML、CSS 和 JavaScript 基本工作知识的人都可以开始使用 jQuery 进行开发;
  • 与所有浏览器兼容:jQuery 在创建时就考虑到了现代浏览器,并且与所有主要的现代浏览器兼容,例如 Chrome、Firefox、Safari、Edge;
  • 完全免费 – 最棒的是它可以完全免费下载和使用。

jQuery 下载

首先,让我们先下载一份 jQuery,然后将其包含在我们的项目中。 有两个版本的 jQuery 可供下载: 片剂 e 未压缩 .

未压缩的文件更适合开发或调试; 同时,建议将缩小和压缩的文件用于生产,因为它可以节省带宽并由于文件较小而提高性能。

我们可以从这里下载 jQuery: https://jquery.com/download/

下载 jQuery 文件后,您可以看到它有一个 js 扩展名,即它是一个 JavaScript 文件。 事实上,JQuery 只不过是一个 JavaScript 库,因此您可以在 HTML 文档中包含 jQuery 文件和元素 就像您包含常规 JavaScript 文件一样。

<head>
    <title>Simple HTML Document</title>
    <link rel="stylesheet" href="css/style.css">
    <script src="js/jquery-3.6.3.min.js"></script>
</head>
<body>
    <h1>Hello, World!</h1>
</body>
</html>

请记住始终在自定义脚本之前包含 jQuery 文件; 否则,当您的 jQuery 代码尝试访问它们时,jQuery API 将不可用。

您可能已经注意到,我们在前面的示例中跳过了属性 type="text/javascript" 标签内. Infatti questo non è richiesto in HTML5. JavaScript è il linguaggio di scripting predefi在 HTML5 和所有现代浏览器中完成。

来自 CDN 的 jQuery

作为替代方案,如果您不想下载文件,可以通过免费提供的 CDN(内容分发网络)链接将 jQuery 嵌入到您的文档中。

CDN 可以通过减少加载时间来提供性能优势,因为它们在世界各地的多个服务器上托管 jQuery,并且当用户请求该文件时,它将从最近的服务器提供服务。

这还有一个好处,如果您的网页访问者在访问其他站点时已经从同一个 CDN 下载了 jQuery 的副本,他们将不必再次下载它,因为它已经在他们的浏览器缓存中。

在这种情况下,你将不得不写:

<script src =" https://code.jquery.com/jquery-3.6.3.min.js "> </script>

除了 jquery 项目提供的 CDN 之外,您还可以通过以下方式包含 jQuery 谷歌 e 微软 CDN。

第一个基于 jQuery 的网页

了解了 jQuery 库的目标以及如何将其包含在您的文档中之后,现在是将 jQuery 付诸实践的时候了。

现在让我们做一个简单的 jQuery 操作,将标题文本颜色从预置颜色更改为defi成品颜色为黑色至绿色。

<head>
    <title>My First jQuery Web Page</title>
    <link rel="stylesheet" href="css/style.css">
    <script src="js/jquery-3.6.3.min.js"></script>
    <script>
        $(document).ready(function(){
            $("h1").css("color", "#00ff00");
        });
    </script>
</head>
<body>
    <h1>Hello, World!</h1>
</body>
</html>

在代码中,我们通过更改标题(即元素)的颜色来执行简单的 jQuery 操作当文档就绪时使用 jQuery 元素的选择器和 css() 方法,称为文档就绪事件。 

jQuery 语法

jQuery 语句通常以美元符号 ( $) 并以分号 ( ;).

在 jQuery 中,美元符号 ( $) 只是 jQuery 的别名。 请考虑以下演示最简单的 jQuery 语句的示例代码。

<script>
    $(document).ready(function(){

        alert("Hello I'm a JQuery sign");
    });
</script>

该示例仅显示一条警告消息“Hello I'm a JQuery sign”给用户。 让我们看看一些功能:

  • 元素 <script>: jQuery只是一个JavaScript库,jQuery代码可以放在元素里面 <script>,或者你可以把它放在一个外部的 JavaScript 文件中;
  • 线 $(document).ready(handler); 被称为就绪事件。 它在哪里 handler 它是一个传递给要执行的方法的函数,一旦文档准备就绪,即当 DOM 层次结构已完全构建时。

jQuery 方法 ready() 它通常与匿名函数一起使用。 所以,上面的例子也可以简写成这样:

<script>
    $(function(){
        alert("Hello I'm a JQuery sign");
    });
</script>

选择器

在函数内部,您可以编写 jQuery 语句来执行遵循基本语法的任何操作,例如:

$(selector).action();

鸽子, $(selector) 它基本上从 DOM 树中选择 HTML 元素,因此可以对其进行操作和 action() 对所选元素应用一些操作,例如更改 CSS 属性的值,或设置元素的内容等。

现在让我们看另一个设置段落文本的例子:

<head>
    <title>jQuery Demo</title>
    <link rel="stylesheet" href="css/style.css">
    <script src="js/jquery-3.6.3.min.js"></script>
    <script>
        $(document).ready(function(){
            $("p").text("Hello World!");
        });
    </script>
</head>
<body>
    <p>Not loaded yet.</p>
</body>
</html>

jQuery 例子是指选择器 p, 这会选择所有段落,然后是方法 text() 设置段落的文本内容为“Hello World!“。

当文档准备好时,上一个示例中的段落文本将被自动替换。 但是让我们看看如果您想在运行 jQuery 代码之前执行一个操作来替换段落的文本,该怎么做。 

让我们考虑最后一个例子:


<head>

    <title>jQuery Demo</title>
    <link rel="stylesheet" href="css/style.css">
    <script src="js/jquery-3.6.3.min.js"></script>
    <script>
        $(document).ready(function(){
            $("button").click(function(){
                $("p").text("Hello World!");
            });            
        });
    </script>
</head>
<body>
    <p>Not loaded yet.</p>
    <button type="button">Replace Text</button>
</body>
</html>

在此示例中,仅当按钮上发生单击事件时才替换段落​​文本“Replace Text“,这仅表示用户单击此按钮时。

按 ID 选择项目

您可以使用 ID 选择器选择页面上具有唯一 ID 的单个项目。

例如,下面的 jQuery 代码将选择并突出显示具有 ID 属性的元素 id="markid", 当文档准备好时。

<script>
$(document).ready(function(){
    // Highlight element with id markid
    $("#markid").css("background", "grey");
});
</script>
选择具有类名的元素

类选择器可用于选择具有特定类的元素。

例如,下面的 jQuery 代码将选择并突出显示具有 class 属性的元素 class="markclass", 当文档准备好时。

<script>
$(document).ready(function(){
    // Highlight elements with class markclass
    $(".markclass").css("background", "grey");
});
</script>
按名称选择项目

项目选择器可用于按项目名称选择项目。

例如,下面的 jQuery 代码将选择并突出显示所有段落,即元素 "<p>" 文档准备就绪时。

创新通讯
不要错过有关创新的最重要新闻。 注册以通过电子邮件接收它们。
<script>
$(document).ready(function(){
    // Highlight paragraph elements
    $("p").css("background", "grey");
});
</script>
按属性选择元素

您可以使用属性选择器根据其 HTML 属性之一选择元素,例如链接属性 target或输入的属性 type等。

例如,下面的 jQuery 代码将选择并突出显示所有文本输入,例如元素 "<input>" type="text", 当文档准备好时。

<script>
$(document).ready(function(){
    // Highlight paragraph elements
    $('input[type="text"]').css("background", "grey");
});
</script>
通过复合 CSS 选择器选择元素

您还可以结合 CSS 选择器使您的选择更加精确。

例如,您可以将类选择器与元素选择器结合使用,以在文档中查找具有特定类型和类的元素。

<script>
$(document).ready(function(){
    // Highlight only paragraph elements with class mark
    $("p.mark").css("background", "yellow");
  
    // Highlight only span elements inside the element with ID mark
    $("#mark span").css("background", "yellow");
  
    // Highlight li elements inside the ul elements
    $("ul li").css("background", "red");
  
    // Highlight li elements only inside the ul element with id mark
    $("ul#mark li").css("background", "yellow");
  
    // Highlight li elements inside all the ul element with class mark
    $("ul.mark li").css("background", "green");
  
    // Highlight all anchor elements with target blank
    $('a[target="_blank"]').css("background", "yellow");
});
</script>
jQuery 自定义选择器

除了选择器之外 definiti,jQuery提供了自己的自定义选择器来进一步增强选择页面上元素的能力。

<script>
$(document).ready(function(){
    // Highlight table rows appearing at odd places
    $("tr:odd").css("background", "yellow");
  
    // Highlight table rows appearing at even places
    $("tr:even").css("background", "orange");
  
    // Highlight first paragraph element
    $("p:first").css("background", "red");
  
    // Highlight last paragraph element
    $("p:last").css("background", "green");
  
    // Highlight all input elements with type text inside a form
    $("form :text").css("background", "purple");
  
    // Highlight all input elements with type password inside a form
    $("form :password").css("background", "blue");
  
    // Highlight all input elements with type submit inside a form
    $("form :submit").css("background", "violet");
});
</script>

活动

事件通常由用户与网页的交互触发,例如单击链接或按钮、在输入框或文本区域中输入文本、在选择框中进行选择、按下键盘上的某个键、移动鼠标​​指针时, ETC。 在某些情况下,浏览器本身可以触发事件,例如页面加载和下载事件。

jQuery 通过为大多数本机浏览器事件提供事件方法改进了基本事件处理机制,其中一些方法是 ready(), click(), keypress(), focus(), blur(), change()等。

<script>
$(document).ready(function(){
    // Code to be executed
    alert("Hello World!");
});
</script>

一般来说,事件可以分为四大类: 

  • 鼠标事件,
  • 键盘事件,
  • 事件模块编辑
  • 文档/窗口事件。 

鼠标事件

当用户点击某个项目、移动鼠标​​指针等时会触发鼠标事件。

下面是一些常用的 jQuery 方法来处理鼠标事件。

方法 click()

该方法 click() 将事件处理函数附加到事件的选定元素“click“。 链接函数在用户单击该项目时执行。 以下示例将隐藏元素 <p> 单击时在页面上。

<script>
$(document).ready(function(){
    $("p").click(function(){
        $(this).slideUp();
    });
});
</script>
方法 dblclick()

该方法 dblclick() 将事件处理函数附加到事件的选定元素“dblclick“。 链接函数在用户双击该项目时执行。 以下示例将隐藏元素 <p> 当您双击它们时。

<script>
$(document).ready(function(){
    $("p").dblclick(function(){
        $(this).slideUp();
    });
});
</script>
方法 hover()

该方法 hover() 将一个或两个事件处理函数附加到选定元素,当鼠标指针移入和移出元素时执行。 第一个函数在用户将鼠标指针放在某个项目上时运行,而第二个函数在用户将鼠标指针从该项目上移开时运行。

以下示例将突出显示项目 <p> 当您将光标放在其上时,当您移除光标时,突出显示将被移除。

<script>
$(document).ready(function(){
    $("p").hover(function(){
        $(this).addClass("highlight");
    }, function(){
        $(this).removeClass("highlight");
    });
});
</script>
方法 mouseenter()

该方法 mouseenter() 将事件处理函数附加到选定元素,当鼠标进入元素时执行。 下面的例子会给元素添加class高亮 <p> 当您将光标放在它上面时。

<script>
$(document).ready(function(){
    $("p").mouseenter(function(){
        $(this).addClass("highlight");
    });
});
</script>
方法 mouseleave()

该方法 mouseleave() 将事件处理函数附加到鼠标离开项目时运行的选定项目。 以下示例将从元素中删除类突出显示 <p> 当您从中删除光标时。

<script>
$(document).ready(function(){
    $("p").mouseleave(function(){
        $(this).removeClass("highlight");
    });
});
</script>

键盘事件

当用户按下或释放键盘上的键时,将引发键盘事件。 让我们看看一些常用的 jQuery 方法来处理键盘事件。

方法 keypress()

该方法 keypress() 将事件处理函数附加到选定元素(通常是表单控件),该函数在浏览器接收到用户的键盘输入时运行。 以下示例将在触发事件时显示一条消息 keypress 以及当您按下键盘上的键时它被触发了多少次。

<script>
$(document).ready(function(){
    var i = 0;
    $('input[type="text"]').keypress(function(){
        $("span").text(i += 1);
        $("p").show().fadeOut();
    });
});
</script>

keypress 事件类似于 keydown 事件,不同之处在于修改键和非打印键(例如 Shift、Esc、Backspace 或 Delete、箭头键等)会被触发。 他们触发按键事件但不触发按键事件。

方法 keydown()

该方法 keydown() 将事件处理函数附加到选定项(通常是表单控件),该函数在用户首次按下键盘上的键时执行。 以下示例将在触发事件时显示一条消息 keydown 以及当您按下键盘上的键时它被触发了多少次。

<script>
$(document).ready(function(){
    var i = 0;
    $('input[type="text"]').keydown(function(){
        $("span").text(i += 1);
        $("p").show().fadeOut();
    });
});
</script>
方法 keyup()

该方法 keyup() 将事件处理函数附加到选定元素(通常是表单控件),该函数在用户释放键盘上的键时执行。 以下示例将在触发事件时显示一条消息 keyup 以及当您按下并释放键盘上的某个键时它会被触发多少次。

<script>
$(document).ready(function(){
    var i = 0;
    $('input[type="text"]').keyup(function(){
        $("span").text(i += 1);
        $("p").show().fadeOut();
    });
});
</script>

表单事件

当表单控件获得焦点或失去焦点时,或者当用户更改表单控件值时触发表单事件,例如在文本输入中键入文本、在选择框中选择选项等。 下面是一些常用的 jQuery 方法来处理表单事件。

方法 change()

该方法 change() 将事件处理函数附加到元素 <input> 并在其值更改时执行。 下面的示例在下拉选择框中选择一个选项时将显示一条警告消息。

<script>
$(document).ready(function(){
    $("select").change(function(){
        var selectedOption = $(this).find(":selected").val();
        alert("You have selected - " + selectedOption);
    });
});
</script>

对于单击框、复选框和单选按钮,当用户进行鼠标选择时事件立即触发,但对于文本输入和文本区域,事件在元素失去焦点后触发。

方法 focus()

该方法 focus() 将事件处理函数附加到选定元素(通常是控件和表单绑定),该函数在获得焦点时执行。 以下示例将在文本输入获得焦点时显示一条消息。

<script>
$(document).ready(function(){
    $("input").focus(function(){
        $(this).next("span").show().fadeOut("slow");
    });
});
</script>
方法 blur()

该方法 blur() 附加一个事件处理函数来形成元素,例如 <input><textarea><select> 当它失去焦点时执行。 以下示例将在文本输入失去焦点时显示一条消息。

<script>
$(document).ready(function(){
    $("input").blur(function(){
        $(this).next("span").show().fadeOut("slow");
    });
});
</script>
方法 submit()

该方法 submit() 将事件处理函数附加到元素 <form> 当用户尝试提交表单时运行。 以下示例将根据尝试提交表单时输入的值显示一条消息。

<script>
$(document).ready(function(){
    $("form").submit(function(event){
        var regex = /^[a-zA-Z]+$/;
        var currentValue = $("#firstName").val();
        if(regex.test(currentValue) == false){
            $("#result").html('<p class="error">Not valid!</p>').show().fadeOut(1000);
            // Preventing form submission
            event.preventDefault();
        }
    });
});
</script>

文档/窗口事件

这些事件也会在 DOM(文档对象模型)页面准备就绪或用户调整大小或滚动浏览器窗口等情况下触发。 下面是一些常用的 jQuery 方法来处理此类事件。

方法 ready()

该方法 ready() 指定在 DOM 完全加载时执行的函数。

一旦 DOM 层次结构完全构建并准备好进行操作,以下示例将替换段落文本。

<script>
$(document).ready(function(){
    $("p").text("The DOM is now loaded and can be manipulated.");
});
</script>
方法 resize()

该方法 resize() 将事件处理函数附加到 window 元素,该函数在浏览器窗口的大小发生变化时运行。

当您尝试通过拖动窗口的角来调整浏览器窗口大小时,以下示例将显示浏览器窗口的当前宽度和高度。

<script>
$(document).ready(function(){
    $(window).resize(function() {
        $(window).bind("resize", function(){ 
            $("p").text("Window width: " + $(window).width() + ", " + "Window height: " + $(window).height());
        });
    });
});
</script>
方法 scroll()

该方法 scroll() 将事件处理函数附加到窗口或 iframe 以及每当项目的滚动位置发生变化时运行的可滚动项目。

以下示例将在滚动浏览器窗口时显示一条消息。

<script>
$(document).ready(function(){
    $(window).scroll(function() {
        $("p").show().fadeOut("slow");
    });
});
</script>

Ercole Palmeri

.

创新通讯
不要错过有关创新的最重要新闻。 注册以通过电子邮件接收它们。

Articoli最新回应

卡塔尼亚综合诊所的 Apple 观众对增强现实进行创新干预

卡塔尼亚综合诊所使用 Apple Vision Pro 商业查看器进行了眼部整形手术……

3 2024五月

儿童涂色页的好处 - 适合所有年龄段的魔法世界

通过着色培养精细运动技能可以帮助孩子们为写作等更复杂的技能做好准备。填色…

2 2024五月

未来已来:航运业如何彻底改变全球经济

海军部门是真正的全球经济力量,已迈向 150 亿美元的市场……

1 2024五月

出版商和 OpenAI 签署协议以规范人工智能处理的信息流

上周一,英国《金融时报》宣布与 OpenAI 达成协议。英国《金融时报》授予其世界级新闻报道许可……

四月30 2024