jQuery 操作 DOM 及 CSS

news2024/11/19 20:18:43

jQuery 操作 DOM 及 CSS

1. jQuery 修改|获取页面元素文本及属性值

text() - 设置或返回所选元素的文本内容

html() - 设置或返回所选元素的内容(包括 HTML 标签)

val() - 设置或返回表单字段的值

attr() - 方法用于获取属性值。


1.1 举例:利用jQuery获取页面元素的文本内容以及输入框的值和属性值。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>jquery学习</title>
</head>

<body>
  <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"> </script>

  <div id="demo1">
    <p>hi ~~~~ </p>
    <p>2023-05-18</p>
  </div>
  <form action="" >
     <input type="text" name="username" value="admin" id="uname"><br>
     <input type="password" name="password" value="00000" id="upwd"><br>
     <input type="submit" value="提交">
  </form>
  <script>
      // 获取id为demo1下的所有p标签的文本值
      console.log($("#demo1>p").text());
      console.log($("#demo1").html());
      // 获取表单form中的字段值
      console.log($("#uname").val());
      console.log($("#upwd").val());
      // 获取输入框的属性值
      console.log($("#uname").attr("value"));
      console.log($("#uname").attr("name"));
  </script>
</body>

</html>

在这里插入图片描述


1.2 举例:利用jQuery修改页面元素的文本内容,输入框的值和属性值

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>jquery学习</title>
</head>

<body>
  <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"> </script>

  <div id="demo1">
    <p>hi ~~~~ </p>
    <p>2023-05-18</p>
  </div>
  <form action="" >
     <input type="text" name="username" value="admin" id="uname"><br>
     <input type="password" name="password" value="00000" id="upwd"><br>
     <input type="submit" value="提交">
  </form>
  <script>
      // 修改id为demo1内的元素内容
      $("#demo1").html("<h3>新增h3标题</h3><p></p><p></p>");
      // 修改id为demo1下的所有p标签的文本值
      $("#demo1>p").text("嗯呢,哈哈哈");
      //修改表单form中的字段值
      $("#uname").val("张三");
      $("#upwd").val("123");
   
  </script>
</body>
</html>

在这里插入图片描述


2. jQuery 添加元素和删除元素

通过 jQuery,可以很容易地添加和删除新元素/内容。

jQuery为我们提供了四个添加元素的方法:

  • append() - 在被选元素的结尾插入内容
  • prepend() - 在被选元素的开头插入内容
  • after() - 在被选元素之后插入内容
  • before() - 在被选元素之前插入内容

两个删除方法:

  • remove() - 删除被选元素(及其子元素)
  • empty() - 从被选元素中删除子元素

2.1 举例: 添加元素

append() - 在被选元素的结尾插入内容;prepend() - 在被选元素的开头插入内容;after() - 在被选元素之后插入内容;before() - 在被选元素之前插入内容。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>jquery学习</title>
</head>

<body>
  <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"> </script>

      <div id="demo1">
        <h2>原有内容</h2>
      </div>
  <script>
      // 获取demo1,开始添加元素
      var demo1 = $("#demo1");
      // prepend 
      demo1.prepend("<h3>prepend 新增h3标题</h3>") ;
      // append 
      demo1.append("<h3>append 新增h3标题</h3>");
      // before
      demo1.before("<h3>before 新增h3标题</h3>");
      // after
      demo1.after("<h3>after 新增h3标题</h3>");
  </script>
</body>

</html>

在这里插入图片描述

观察一下,perpend 和 append 是将元素插入到了选择的元素的内部,然后prepend是在原有的之前插入,append是在原有的之后插入。

before 和 after 是在元素的外侧插入,before 是之前,after是之后。


2.2 举例: 删除元素

remove() - 删除被选元素(及其子元素),empty() - 从被选元素中删除子元素。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>jquery学习</title>
  <style>
    /* 为了方便观察结果,给ul加个样式 */
    .List{
      border: 1px solid darkorange;
      width: 200px;
      height: 200px;
      background-color: #eee;
    }
  </style>
</head>

<body>
  <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"> </script>
     <ul class="List">
      <li>Java</li>
      <li>c</li>
      <li>c++</li>
      <li>c#</li>
      <li>golang</li>
      <li>rust</li>
      <li>php</li>
      <li>python</li>
     </ul>
     <button id="btnDelAllLi">清空所有li</button>
     <button id="btnDelAll">删除ul列表</button>
  <script>
     var ulList = $(".List");
     var btnDelAll = $("#btnDelAllLi");
     btnDelAll.click(function(){
      ulList.empty();
     });
     var btnDelAll = $("#btnDelAll");
     btnDelAll.click(function(){
      ulList.remove();
     });
  </script>
</body>

</html>

empty 测试

在这里插入图片描述
在这里插入图片描述

remove 测试
在这里插入图片描述

在这里插入图片描述


3. jQuery 操作css

jQuery 提供了若干进行 CSS 操作的方法,常用的如下:

  • addClass() - 向被选元素添加一个或多个类
  • removeClass() - 从被选元素删除一个或多个类
  • toggleClass() - 对被选元素进行添加/删除类的切换操作
  • hasClass() - 对被选元素查看是否含有指定的类属性,若有则返回true,无则返回true
  • css() - 设置或返回内联样式属性 (设置返回的是style:"")

3.1 举例:多种方法修改页面元素的css样式

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>jquery学习</title>
  <style>
    .blog {
      width: 400px;
      height: 200px;
      background-color: #eee;
      border: 1px solid darkcyan;
      border-radius: 10px;
    }

    .blog-title {
      text-align: center;
    }

    .at-block {
      text-align: center;
      border-bottom: 1px dotted black;
    }

    .article {
      background-color: #eee;
    }

    /* 字体加粗 */
    .weight{
      font-weight: bolder;
    }

    /* 字体缩小 */
    .less{
      font-weight:lighter;
    }
    /* 字体颜色 */
    .at-color{
      color: cornflowerblue;
    }
  </style>
</head>

<body>
  <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"> </script>

  <div class="blog">
    <h3 class="blog-title">杀死一只知更鸟的博客</h3>
    <div class="article">
      <p class="at-block">文章名称:SpringMVC 学习笔记---2021/12/01</p>
      <p class="at-block">文章名称:SpringBoot 学习笔记---2022/02/04</p>
      <p class="at-block">文章名称:ThinkPHP6 学习笔记---2023/05/11</p>
    </div>
  </div>
  <button id="upd1">文章字体加粗</button>
  <button id="upd2">文章字体缩小</button>
  <button id="upd3">字体颜色切换</button>
  <button id="upd4">字体变大</button>
  <button id="upd5">字体样式复原</button>
  <script>
      var p = $(".at-block");
      var btn1 = $("#upd1");
      var btn2 = $("#upd2");
      var btn3 = $("#upd3");
      var btn4 = $("#upd4");
      var btn5 = $("#upd5");
      // 文章字体加粗
      btn1.click(function(){
        if(p.hasClass("less")){
          p.removeClass("less");
        }
        if(!p.hasClass("less")&&!p.hasClass("weight")){
          p.addClass("weight");
        }
      });
      // 文章字体缩小
      btn2.click(function(){
        if(p.hasClass("weight")){
          p.removeClass("weight");
        }
        if(!p.hasClass("weight")&&!p.hasClass("less")){
          p.addClass("less");
        }
      });
      // 字体颜色切换
      btn3.click(function(){
        p.toggleClass("at-color");
      });
      // 字体变大
      btn4.click(function(){
        p.css("font-size","18px");
      })
      // 字体样式复原
      btn5.click(function(){
        if(p.hasClass("weight")){
          p.removeClass("weight");
        }
        if(p.hasClass("less")){
          p.removeClass("less");
        }
        if(p.hasClass("at-color")){
          p.removeClass("at-color");
        }
        // 将style内联属性置为空字符串
        p.attr("style","")
        // p.css("font-size","16px") 与上面的方式效果等价
      });
  </script>
</body>

</html>

这个例子的话,可以自行测试。截图太多啦…


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/541373.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

win11亮度条消失解决方法之一

一、前言 1、本人电脑情况&#xff1a;联想小新Pro16&#xff0c;win11家庭版 2、联想技术工程师三种方式联系方式&#xff08;需提供电脑背后的编号&#xff09;&#xff1a; 1&#xff09; 通过预装的联想电脑管家&#xff0c;获取在线人工专家支持&#xff08;管家链接 h…

【ETH】以太网----PHY芯片LAN8720A----电路原理图

一、LAN8720A----简介 LAN8720A 是低功耗的 10/100M 以太网 PHY 层芯片&#xff0c;I/0 引脚电压符合EEE802.3-2005 标准&#xff0c;支持通过 RMI 接口与以太网 MAC 层通信&#xff0c;内置 10-BASE-T/100BASE-TX 全双工传输模块&#xff0c;支持 10Mbps 和 100Mbps。 LAN87…

SpringMVC的请求与响应(请求映射路径、请求参数、日期类型参数传递 、响应json数据)

文章目录 1&#xff0c;PostMan工具的使用1.1 PostMan简介1.2 PostMan安装1.3 PostMan使用1.3.1 创建WorkSpace工作空间1.3.2 发送请求1.3.3 保存当前请求 2&#xff0c;请求与响应2.1 设置请求映射路径2.1.1 环境准备2.1.2 问题分析2.1.3 设置映射路径步骤1:修改Controller步骤…

Java基础面试题突击系列2

&#x1f469;&#x1f3fb; 作者&#xff1a;一只IT攻城狮 &#xff0c;关注我不迷路 ❤️《java面试核心知识》突击系列&#xff0c;持续更新… &#x1f490; 面试必知必会学习路线&#xff1a;Java技术栈面试系列SpringCloud项目实战学习路线 &#x1f4dd;再小的收获*365天…

以ChatGPT写诗为例,教你如何用AI软件创新性提问?

想用AI软件创作出动人的诗篇吗&#xff1f; ChatGPT 是一款人工智能软件&#xff0c;可以帮助你创作鼓舞人心的诗歌。它为您提供了一个强大的平台来探索您的创意方面。通过一组简单的问题&#xff0c;您只需点击几下就可以生成令人惊叹的诗歌。 要想让机器写诗&#xff0c;你…

低代码开发——进最热的赛道,啃最硬的骨头

你开足马力提了一串需求&#xff0c;需要招聘IOS和Android工程师、前端测试&#xff0c;PM等人员共同完成&#xff1b;这意味着开发者坐下来一行一行的敲击&#xff0c;并不断测试修改直到上线。 这个过程短则半年&#xff0c;长则数年&#xff0c;才会给到你一个满意的产品。…

基于 Web 的作物生长监控系统的

访问【WRITE-BUG数字空间】_[内附完整源码和文档] 本毕业设计在对 A 基地进行调研的基础上。设计并开发了一套基于 Web 的作物生长监控系统&#xff0c;该系统由软件和硬件两部分组成。硬件部分采用了已开发好的多点温湿度采集系统&#xff0c;软件部分采用 Java 开发语言、HT…

回应小伙伴们的咨询,5款好用的小软件

最近陆陆续续收到好多小伙伴的咨询&#xff0c;这边也是抓紧时间整理出几个好用的软件&#xff0c;希望可以帮到大家。 1.RSS阅读器——Tabby Tabby是一款简洁美观的RSS阅读器。它可以自动抓取并订阅你喜欢的博客和网站更新。这个工具拥有简洁的界面和强大的功能,可以过滤和分…

零信任---ZTN

零信任是一种以身份为中心的新一代网络安全防护理念&#xff0c;通过持续的身份认证、环境状态采集、持续信任评估、动态访问控制&#xff0c;并遵循最小权限原则&#xff0c;实现在不可信网络中构筑可信的访问通道。 传统场景中&#xff0c;企业的安全都是在以防火墙为边界的。…

WhatsApp Business 多人使用终极指南

今时今日&#xff0c;几乎每个人的手机上都安装了 WhatsApp&#xff0c;不少电商更会依赖 WhatsApp作为和客户沟通的主要渠道。但对有一定规模的店铺来说&#xff0c;WhatsApp绑定一个号码和设备的设定实在很不方便。如何才能用WhatsApp Business批量处理客户查询呢&#xff1f…

Linux下安装MySQL8

一、安装MySQL8 1、下载 官网&#xff1a;https://dev.mysql.com/downloads/mysql/ 服务器wget下载 cd /data wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.28-1.el7.x86_64.rpm-bundle 2、解压 tar -xvf mysql-8.0.28-1.el7.x86_64.rpm-bundle.tar 3、…

十进制转二进制/八进制/十六进制

首先&#xff0c;我们有一个十进制的数字**(21)D**&#xff0c;其他博主都是用除法来算&#xff0c;如果数字小还能适用&#xff0c;如果数字大&#xff0c;就不适用了 以下是我的方法&#xff1a; 十进制转二进制&#xff1a; 通过上图我们可以得到(21)D的二进制为(10101)B&…

【C++】STL——容器适配器 stack和queue 深度剖析及模拟实现

文章目录 1. stack的介绍及使用1.1 stack的介绍1.2 stack的使用 2. stack的模拟实现2.1 适配器模式的了解2.2 结构2.3 成员函数 3. queue的介绍及使用3.1 queue的介绍3.2 queue的使用 4. queue的模拟实现5. STL标准库中stack和queue的底层结构6. deque的简单介绍(了解)6.1 dequ…

Linux安装GitLab

一、摘要 公司经常用Gitlab做为代码仓库&#xff0c;这里我也安装下Gitlab&#xff0c;为后面CI/CD集成打下基础&#xff0c;官方安装地址&#xff1a;https://about.gitlab.com/install/#centos-7。不过官网很多人说比较坑&#xff0c;这里就不用官方方法安装了。 二…

在职字节,一个8年软件测试工程师的学习经历

简单的先说一下&#xff0c;坐标北京&#xff0c;15届本科毕业&#xff0c;算上年前在字节跳动的面试&#xff0c;一共有面试了有6家公司&#xff08;因为不想请假&#xff0c;因此只是每个晚上去其他公司面试&#xff0c;所以面试的公司比较少&#xff09; 其中成功的有4家&am…

ChatGPT:DevSecOps 落地实践的最后一公里

DevSecOps 背后的三个逻辑 复杂性&#xff1a;让安全从 “幕后” 走向 “台前” 安全并不是一个新鲜的话题&#xff0c;自软件诞生以来&#xff0c;安全就一路伴随&#xff0c;但是近几年安全似乎又到了一个新的 “热度” 与 “高度”。 一些企业、组织都在探讨软件供应链安全…

Vue3迎来升级,助力企业数字化转型

近年来&#xff0c;随着“互联网”的推进与应用普及&#xff0c;数字化转型已经成为企业发展的必备选项。低代码开发平台的迅速普及和广泛应用&#xff0c;也为企业数字化的转型提供了支撑技术。 JNPF快速开发平台深度集成java.net 6 双技术引擎&#xff0c;具备易维护、便部署…

H3C-NE-实验-VLAN的划分

实验拓扑结构图&#xff1a; 1. 配置PC机的IP地址 依次为192.168.1.1/24、192.168.1.2/24、192.168.1.3/24、192.168.1.4/24 注意接口管理要启用&#xff0c;接口状态必须为UP 2. 检测Ping通性 因为4台PC机都在同一个网段&#xff0c;H3C交换机默认端口也是属于Access口&#x…

【c语言】文本文件的读写操作

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c语言系列专栏&#xff1a;c语言之路重点知识整合 &#x…

【复杂网络建模】——通过图神经网络来建模分析复杂网络

目录 一、复杂网络介绍 二、复杂网络建模分析方法 三、基于图神经网络来建模 1、数据准备 2、构建图神经网络模型 3、学习节点和边的表示 4、特征提取和预测 5、模型评估和优化 四、可视化建模分析 1、初始网络可视化 2、特征可视化 一、复杂网络介绍 复杂网络是指…