Java Web——jQuery概念理解与选择器的应用

简介: Java Web——jQuery概念理解与选择器的应用

1.什么是jQuery


jQuery是一款跨主流浏览器的 JavaScript 库,封装了 JavaScript 相关方法调用,简化 JavaScript HTML DOM 操作。

jQuery其实就是js库,其中存放的是js代码,也就是用js代码写的function

官网地址:https://jquery.com/

jQuery是一个快速,小巧,功能丰富的 JavaScript 库。它通过易于使用的API在大量浏览器中运行,使得 HTML 文档遍历和操作,事件处理,动画和 Ajax 变得更加简单。通过多功能性和可扩展性的结合,jQuery 改变了数百万人编写 JavaScript 的方式。

2.为什么使用jQuery?


非常重要的理由就是:它能够兼容市面上主流的浏览器, IE FireFoxGoogle 浏览器处理 AJAX,创建异步对象是不同的,而 jQuery 能够使用一种方式在不同的浏览器创建 AJAX 异步对象。
其他优点:
1)写少代码,做多事情【write less do more
2)免费,开源且轻量级的 js 库,容量很小
3)兼容市面上主流浏览器,例如 IEFirefoxChrome
4)能够处理 HTML/JSP/XMLCSSDOM、事件、实现动画效果,也能提供异步 AJAX 功能
5)文档手册很全,很详细
6)成熟的插件可供选择,多种 js 组件,例如日历组件(点击按钮显示下来日期)
7)出错后,有一定的提示信息
8)不用再在 html 里面通过<script>标签插入一大堆 js 来调用命令了

3.jQuery的下载

官网下载地址:https://jquery.com/download/

这里直接将官网的两个文件(压缩和未压缩的)复制粘贴到记事本中,然后将文件后缀名改为  .min.js .js 就可以了。

之后在HBuilderX中,新建一个项目,在这个项目中新建一个目录,将上面两个文件中的 jquery-3.6.0.js 复制粘贴到这个目录中。

4.DOM对象和jQuery对象


DOM对象:用 JavaScript 语法创建的对象,也看做是 js 对象。

jQuery对象:使用jQuery语法表示的对象,注意,jQuery表示的对象都是数组。

为什么要进行DOM对象和jQuery对象之间的转换?=======目的是要使用对象的方法。


4.1 DOM对象转jQuery对象


使用$(DOM 对象) 方式,可以 DOM 对象转换为 jQuery 对象,转换为 jQuery 对象才可以使用 jQuery 中的提供的方法,操作 DOM 对象。一般情况下,在命名 jQuery 对象时,为了与 DOM 对象进行区分,习惯性的以 $ 开头,这不是必须的。

<!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
    <title>dom对象转为jQuery</title>
    <script type="text/javascript" src="js/jquery-3.6.0.js"></script>
    <script type="text/javascript">
      function btnClick() {
        //获取dom对象
        var obj=document.getElementById("btn");
        //使用dom对象的value属性获取值
        alert("使用dom对象的属性=" + obj.value);
        //把dom对象转为jQuery,使用jQuery库中的函数
        var $jobj=$(obj);
        //调用jQuery中的函数,获取value值
        alert(jobj.val());
      }
    </script>
  </head>
  <body>
    <input type="button" id="btn" value="===我是按钮===" onclick="btnClick()" />
  </body>
</html>

4.2 jQuery对象转DOM对象

jQuery对象本身为数组对象,该数组中的第 0 个元素即为该 jQuery 对象对应的 DOM 对象。所以有两种方式可以获取到 DOM 对象:get(0) 方式与下标[0]

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>jQuery对象转为dom</title>
    <script type="text/javascript" src="js/jquery-3.6.0.js"></script>
    <script type="text/javascript">
      function btnClick() {
        //使用jQuery语法获取页面中的dom对象
        var obj=$("#txt")[0];//从数组中获取下标是0的dom对象
        var num=obj.value;
        obj.value=num*num;
        alert("整数" + num + "的平方是" + obj.value);
      }
    </script>
  </head>
  <body>
    <div>
      <input type="button" value="计算平方" onclick="btnClick()" /><br />
      <input type="text" id="txt" value="整数" />
    </div>
  </body>
</html>


5.jQuery选择器


选择器: 就是定位条件;通知 jquery 函数定位满足条件的 DOM 对象。


5.1 基本选择器 


根据 IDclass 属性,标签类型名定位 HTML 元素,转为 jQuery 对象。


5.1.1 id选择器 


 语法:
 $("#id")

5.1.2 class选择器

  语法:
  $(".class名称")

5.1.3 标签选择器

  语法:
  $("标签名")

5.1.4 全部选择器 

  语法:
  $("*")

5.1.5 组合选择器

 语法:
  $("#id, .class, 标签名")

5.1.6 小实例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title></title>
    <style type="text/css">
      div {
        background-color: gray;
        width: 200px;
        height: 100px;
      }
    </style>
    <script type="text/javascript" src="js/jquery-3.6.0.js"></script>
    <script type="text/javascript">
      function fun1() {
        //id选择器
        var obj=$("#one");
        //使用jQuery中改变样式的函数
        obj.css("background","red");
      }
      function fun2() {
        //class选择器
        var obj=$(".two");
        //使用jQuery中改变样式的函数
        obj.css("background","blue");
      }
      function fun3() {
        //标签选择器
        var obj=$("div");//$("span")
        //jQuery操作是操作数组中的全部成员
        //这里会把所有div标签的背景颜色改为绿色
        obj.css("background","green");
      }
      //全部选择器   $("*")
      //组合选择器   $("#one,span")
    </script>
  </head>
  <body>
    <div id="one">我是one的div</div>
    <br />
    <div class="two">我是样式two的div</div>
    <br />
    <div>我是没有id、class的div</div>
    <br />
    <span>我是span标签</span><br />
    <br />
    <input type="button" value="获取id=one的dom对象" onclick="fun1()" />
    <input type="button" value="获取class=two的dom对象" onclick="fun2()" />
    <input type="button" value="获取标签为div的dom对象" onclick="fun3()" />
  </body>
</html>


5.2 表单选择器


表单相关元素选择器是指文本框、单选框、复选框、下拉列表等元素的选择方式。该方法无论是否存在表单<form>,均可做出相应选择。使用<input>标签的type属性值,定位dom对象的方式。 

语法:
$(":type 属性值")
例如:
$(":text")          选取所有的单行文本框
$(":password")      选取所有的密码框
$(":radio")         选取所有的单选框
$(":checkbox")      选取所有的多选框

5.2.1 小实例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>表单选择器</title>
    <script type="text/javascript" src="js/jquery-3.6.0.js"></script>
    <script type="text/javascript">
      function fun1() {
        var $obj=$(":text");
        alert($obj.val());
      }
      function fun2() {
        var $obj=$(":radio");
        for(var i=0;i<$obj.length;i++) {
          var dom=$obj[i];
          alert(dom.value);
        }
      }
      function fun3() {
        var $obj=$(":checkbox");
        for(var i=0;i<$obj.length;i++) {
          var dom=$obj[i];
          alert(dom.value);
        }
      }
    </script>
  </head>
  <body>
    <input type="text" value="我的type=text" />
    <br />
    <input type="radio" value="man" /> 男 <br />
    <input type="radio" value="woman" /> 女 <br />
    <br />
    <input type="checkbox" value="red" /> 红色 <br />
    <input type="checkbox" value="green" /> 绿色 <br />
    <input type="checkbox" value="blue" /> 蓝色 <br />
    <br />
    <input type="button" value="读取text值" onclick="fun1()" /><br /><br />
    <input type="button" value="读取radio值" onclick="fun2()" /><br /><br />
    <input type="button" value="读取checkbox值" onclick="fun3()" /><br /><br />
  </body>
</html>

相关文章
|
20天前
|
前端开发 JavaScript 安全
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第27天】本文介绍了HTTP/2和HTTPS在前端性能调优中的应用。通过多路复用、服务器推送和头部压缩等特性,HTTP/2显著提升了Web性能。同时,HTTPS确保了数据传输的安全性。文章提供了示例代码,展示了如何使用Node.js创建一个HTTP/2服务器。
35 3
|
25天前
|
移动开发 开发者 HTML5
构建响应式Web界面:Flexbox与Grid的实战应用
【10月更文挑战第22天】随着互联网的普及,用户对Web界面的要求越来越高,不仅需要美观,还要具备良好的响应性和兼容性。为了满足这些需求,Web开发者需要掌握一些高级的布局技术。Flexbox和Grid是现代Web布局的两大法宝,它们分别由CSS3和HTML5引入,能够帮助开发者构建出更加灵活和易于维护的响应式Web界面。本文将深入探讨Flexbox和Grid的实战应用,并通过具体实例来展示它们在构建响应式Web界面中的强大能力。
34 3
|
1月前
|
存储 安全 关系型数据库
后端技术:构建高效稳定的现代Web应用
【10月更文挑战第5天】后端技术:构建高效稳定的现代Web应用
55 1
|
7天前
|
缓存 安全 网络安全
HTTP/2与HTTPS在Web加速中的应用
HTTP/2与HTTPS在Web加速中的应用
|
10天前
|
SQL 安全 前端开发
PHP与现代Web开发:构建高效的网络应用
【10月更文挑战第37天】在数字化时代,PHP作为一门强大的服务器端脚本语言,持续影响着Web开发的面貌。本文将深入探讨PHP在现代Web开发中的角色,包括其核心优势、面临的挑战以及如何利用PHP构建高效、安全的网络应用。通过具体代码示例和最佳实践的分享,旨在为开发者提供实用指南,帮助他们在不断变化的技术环境中保持竞争力。
|
13天前
|
Java Maven Spring
Java Web 应用中,资源文件的位置和加载方式
在Java Web应用中,资源文件如配置文件、静态文件等通常放置在特定目录下,如WEB-INF或classes。通过类加载器或Servlet上下文路径可实现资源的加载与访问。正确管理资源位置与加载方式对应用的稳定性和可维护性至关重要。
|
15天前
|
存储 安全 搜索推荐
理解Session和Cookie:Java Web开发中的用户状态管理
理解Session和Cookie:Java Web开发中的用户状态管理
40 4
|
21天前
|
前端开发 安全 应用服务中间件
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第26天】随着互联网的快速发展,前端性能调优成为开发者的重要任务。本文探讨了HTTP/2与HTTPS在前端性能优化中的应用,介绍了二进制分帧、多路复用和服务器推送等特性,并通过Nginx配置示例展示了如何启用HTTP/2和HTTPS,以提升Web应用的性能和安全性。
21 3
|
21天前
|
前端开发 JavaScript API
前端框架新探索:Svelte在构建高性能Web应用中的优势
【10月更文挑战第26天】近年来,前端技术飞速发展,Svelte凭借独特的编译时优化和简洁的API设计,成为构建高性能Web应用的优选。本文介绍Svelte的特点和优势,包括编译而非虚拟DOM、组件化开发、状态管理及响应式更新机制,并通过示例代码展示其使用方法。
36 2
|
21天前
|
算法 Java 数据库连接
Java连接池技术,从基础概念出发,解析了连接池的工作原理及其重要性
本文详细介绍了Java连接池技术,从基础概念出发,解析了连接池的工作原理及其重要性。连接池通过复用数据库连接,显著提升了应用的性能和稳定性。文章还展示了使用HikariCP连接池的示例代码,帮助读者更好地理解和应用这一技术。
33 1
下一篇
无影云桌面