首页 前端知识 Java研学-jQuery(一)

Java研学-jQuery(一)

2024-05-28 09:05:28 前端知识 前端哥 10 679 我要收藏

一 jQuery 简介

1 介绍

  jQuery是一个快速、简洁且功能丰富的JavaScript库。它的核心理念是“写得更少,做得更多”,旨在通过封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,从而极大地简化JavaScript编程。

  jQuery使用户能够方便地遍历HTML文档、操作DOM、处理事件、实现动画效果和提供Ajax交互。它兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等,并兼容CSS3.0。此外,jQuery还提供了大量的插件,进一步扩展了其功能。

  具体来说,jQuery库包含以下功能:

  HTML元素选取和操作:jQuery可以方便地选取和操作HTML元素,包括元素的添加、删除、修改等。
  CSS操作:jQuery提供了丰富的CSS操作方法,可以方便地修改元素的样式。
  HTML事件函数:jQuery封装了常见的事件处理函数,如点击、鼠标移动等,使得事件处理更加简单。
  JavaScript特效和动画:jQuery内置了多种动画效果,可以轻松地为网页添加动态效果。
  HTML DOM遍历和修改:jQuery提供了强大的DOM遍历和修改功能,可以方便地操作DOM结构。
  AJAX:jQuery内置了AJAX功能,可以实现与服务器的异步通信,提高网页的响应速度。

  总的来说,jQuery是一个功能强大且易于使用的JavaScript库,它极大地简化了JavaScript编程,提高了开发效率。同时,由于其良好的兼容性和大量的插件支持,jQuery已经成为了目前最流行的JS代码库之一。

2 jQuery 文件介绍

  jQuery1.x.js:jQuery 源文件;学习 jQuery 或者 debug 的时候使用。
  jQuery1.x.min.js:jQuery 压缩之后的文件;正常项目中使用。

二 引入 jQuery

1 拷贝 jQuery 文件到项目中

  将从官网下载的 jQuery文件夹拷贝到项目的 webapp 下的 static 目录下
拷贝 jQuery

2 外部引用与内部引用

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>jquery初体验</title>
</head>
<body>
<!--外部引入-->
<!--..的作用是从当前HTML文件所在的目录,返回到上一级目录-->
<script src="../static/jQuery-2.1.4/jquery-2.1.4.js"></script>
<!--内部引入-->
<script>
    /*弹窗*/
    alert(123)
    // alert($)
    // $==jQuery 二者等价可以替换使用 表示jquery对象
    console.log($)
    console.log(jQuery)
</script>
</body>
</html>

三 jQuery 对象

1 对象引入

  通过 document.getElementById() 找到的元素(获取DOM元素,js对象)和通过 $() 找到元素(jq对象)不一样,由此调用的方法也是不同的

  • js对象就是原生的DOM对象
  • 通过 jQuery 方法获取的页面元素,都是 jQuery 对象
  • jQuery 实质为对 DOM 对象进行了包装,增强相关了方法
  • 虽然 jQuery 对象包装了 DOM 对象但是两者不能混用,二者是两个不类型的对象,但调用 jQuery 对象的方法,事实上底层代码还是操作的是 DOM 对象

2 jQ对象与 DOM 对象之间转换

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>对象转换</title>
</head>
<body>
<button id="btn">按钮</button>
<!--外部引入-->
<script src="../static/jQuery-2.1.4/jquery-2.1.4.js"></script>
<!--内部引入-->
<script>
    //js获取对象按钮
    var btn = document.getElementById("btn");//dom对象
    // 为按钮设置名字
    // btn.innerHTML="js按钮";
    //jq获取按钮对象
    var btn1 = $("#btn");//jq对象

    //js对象转换成jq对象:$(js对象)
    var btn2 = $(btn);
    // 为按钮设置名字
    // btn2.html("jq按钮");
    //jq对象转换成js对象:jq对象.get(0)
    btn2.get(0).innerHTML = "jq转换后的按钮";
</script>
</body>
</html>

四 jQ对象常用方法

1 html 页面

  在线检索API文档

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>对象常用方法</title>
</head>
<body>
<h3 id="h3">做人<i>要低调</i></h3>
<input type="text" id="username" value="tj"/><br/><br/>
<hr/>
<div>
    <p>获取 jQ 中包含 DOM 的个数,比如获取页面上 p 元素的个数</p>
    <p>获取 id 为 username 元素的 value 属性值</p>
    <p>设置 id 为 username 元素的 value 属性值为"TJ"</p>
    <p>对比 h1 元素的内容和纯文本的区别</p>
    <p>把 h1 元素内容的颜色改为黄色</p>
</div>
<!--外部引入-->
<script src="../static/jQuery-2.1.4/jquery-2.1.4.js"></script>
<!--内部引入-->
<script>
    // 1:获取 jQuery 中包含 DOM 的个数,比如获取页面上 p 元素的个数
    console.log($("p").size())
    // 2:获取 id 为 username 元素的 value 属性值
    console.log($("#username").val())
    // 3:设置 id 为 username 元素的 value 属性值为"TJ"
    $("#username").val("TJ");//改变元素的值
    // 4:对比 h1 元素的内容和纯文本的区别
    // 获取文本内容 html可以识别文本中的标签 text不行
    console.log($("#h3").html()) // 做人<i>要低调</i>
    console.log($("#h3").text()) // 做人要低调
    // 改变文本内容
    // 做人必须要高调 (成为一个链接 可以解析标签)
    // $("#h3").html("<a href='#'>做人必须要高调</a>");
    // <a href='#'>做人必须要高调</a> (原文输出)
    // $("#h1").text("<a href='#'>做人必须要高调</a>");
    // 5:把 h1 元素内容的颜色改为黄色
    $("#h3").css("color", "green");
</script>
</body>
</html>

五 jQ选择器

1 作用

  jQuery选择器是一种用于“选择”(或“查找”)HTML元素的方式,它基于元素的名称、id、类名、类型、属性等。一旦这些元素被选中,你就可以对它们执行各种操作,比如修改它们的样式、内容或属性,或者为它们添加事件处理程序。

2 选择器的组成

  选择器一般由“特殊符号”+“字符串”组成。比如:“#”代表 id,“mydiv”是一个字符串,那么整体 #mydiv 代表的是 id 为 mydiv 的元素对象。

3 如何使用选择器获取元素

  语法:$(“选择器”) ,如 $ (“#mydiv”)。
  注意:如果通过 jQuery 方法获取页面中元素,没有查找到,返回值不是 null,返回值为一个空数组 [],所以判断是否获取到元素,通过 jQuery.size() != 0 来判断。

六 基本选择器

1 介绍

  jQuery 最常用,最简单选择器,通过元素的 id、class 或标签等查找元素。在网页中,每个 id 名称只能使用一次[0, 1],class 允许重复使用 [0, n]。

2 id 选择器

  #id,用法:$(“#myDiv”) 返回值单个元素的组成的集合。
  说明:这个就是直接选择 html 中的 id=“myDiv”。

3 元素选择器

  Element,用法:$(“div”) 返回值元素集合。
  说明:element 的英文翻译过来是“元素”,所以 element 其实就是 HTML 已经定义的标签元素,例如 div,input,a 等等。

4 类选择器

  class,用法:$(”.myClass“) 返回值元素集合。
  说明:这个标签是直接选择 HTML 代码中 class=”myClass” 的元素或元素组(因为在同一 HTML 页面中 class 是可以存在多个同样值的元素)。

5 demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>基本选择器使用</title>
</head>
<body>
<div id="msg">使用 ID 选择器获取当前 DIV元素</div>
<ul>
    <li>item1</li>
    <li>item2</li>
    <li>item3</li>
    <li>item4</li>
</ul>
<ul id="myul">
    <li>item1</li>
    <li class="selected">item2</li>
    <li>item3</li>
    <li class="selected">item4</li>
</ul>
<hr/>
<!--外部引入-->
<script src="../static/jQuery-2.1.4/jquery-2.1.4.js"></script>
<!--内部引入-->
<script>
  // 1:获取 id 为 msg 的元素的内容
  console.log($("#msg").html())
  // 2:获取所有的 li 元素并打印数量
  console.log($("li").size())
  // 3:获取所有 class 为 selected 的元素,字体颜色改为 red
  $(".selected").css("color","red");
</script>
</body>
</html>

七 层次选择器

1 介绍

  若想通过 DOM 元素之间的层次关系(DOM结构)来获取特定元素,例如后代元素,子元素, 相邻元素,兄弟元素等,需使用层次选择器。

2 ancestor descendant

  用法:$(“form input”)
  说明:在给定的祖先元素下匹配所有后代元素。

3 parent > child

  用法:$(“form > input”)
  说明:在给定的父元素下匹配所有子元素。

4 prev + next

  用法:$(”label + input“)
  说明:匹配所有紧接在 prev 元素后的 next 元素。

5 prev ~ siblings

  用法:$(“form ~ input”)
  说明:匹配 prev 元素之后的所有 siblings 元素。
  注意:是匹配之后的元素,不包含该元素在内,并且 siblings 匹配的是和 prev 同辈的元素,其后辈元素不被匹配。

6 demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>层次选择器使用</title>
</head>
<body>
<ul id="myul">
    <li>item1</li>
    <li>item2</li>
    <li>item3</li>
    <li>
        <ul>
            <li>item1</li>
            <li>item2</li>
            <li>item3</li>
            <li>item4</li>
        </ul>
    </li>
</ul>
<label>LABEL1</label>
<input type="text" value="text1"/>
<input type="text" value="text2"/>
<label>LABEL2</label>
<input type="text" value="text3"/>
<input type="text" value="text4"/>
<br/>
<label>
    LABEL3
    <input type="text" value="text5"/>
    <input type="text" value="text6"/>
</label>
<hr/>
<!--外部引入-->
<script src="../static/jQuery-2.1.4/jquery-2.1.4.js"></script>
<!--内部引入-->
<script>
    // 1:获取所有 ul 下的所有 li 元素,并打印分析结果
    // console.log( $("#myul li"))
    // 2:获取 id 为 myul 下的所有子 li 元素,并打印分析结果
    // console.log($("#myul > li"))
    // 3:获取所有 label 元素后的 input 元素,并打印分析结果
    // console.log($("label ~ input"))
    // 4:获取紧跟着 label 元素后的 input 元素,并打印分析结果
    console.log($("label + input"))
</script>
</body>
</html>

八 过滤选择器

1 介绍

  过滤选择器:通过特定的过滤规则来筛选所需要的 DOM 元素,过滤规则与 CSS 中的伪类选择器语法相同。该选择器一般以一个冒号(:)开头,按照不同的过滤规则,可分为基本过滤,内容过滤,可见性过滤,属性过滤,子元素过滤,表单对象属性过滤选择器。

2 demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>过滤选择器使用</title>
</head>
<body>
<input type="hidden" name="id" value="1">
<select>
    <option value="1">Flowers</option>
    <option value="2" selected>Gardens</option>
    <option value="3">Trees</option>
</select>
<hr/>
<!--外部引入-->
<script src="../static/jQuery-2.1.4/jquery-2.1.4.js"></script>
<!--内部引入-->
<script>
    // 1:获取隐藏input的value值, 不根据元素名,通过 id 选择器找
    console.log($("input[name='id']").val())
    // 2:获取选中的 option
    console.log($("option:selected").html())
</script>
</body>
</html>
转载请注明出处或者链接地址:https://www.qianduange.cn//article/9761.html
标签
评论
发布的文章
大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!