【jQuery】常用API——jQuery元素操作

news2025/1/18 10:43:36

jQuery元素操作主要是遍历、创建、添加、删除元素操作。

一、遍历元素

jQuery 隐式迭代是对同一类元素做了同样的操作。 如果想要给同一类元素做不同操作,就需要用到遍历

    • 主要用于DOM处理

$("div").each(function (index, domEle) { xxx; });

each:每一个。each() 方法遍历匹配的每一个元素。主要用于DOM处理。

里面的回调函数有2个参数:index 是每个元素的索引号demEle每个 DOM 元素对象,不是 jquery 对象。

所以要想使用 jquery 方法,需要给这个 DOM 元素转换为 jquery 对象 $(domEle)

    <script src="../jquery.min.js"></script>
</head>

<body>
    <!-- 将三个div分别变成不同颜色,并且将三个div的值相加 -->
    <div>1</div>
    <div>2</div>
    <div>3</div>

    <script>
        $(function () {
            // 隐式迭代:对同一类元素做了同样的操作
            // $("div").css("color", "red");

            // 如果针对于同一类元素做不同操作,需要用到遍历元素(类似for,但是比for强大)
            var sum = 0; //相加
            // 1. each() 方法遍历元素 
            var arr = ["red", "green", "blue"]; //颜色
            $("div").each(function (i, domEle) {
                // 回调函数第一个参数一定是索引号  可以自己指定索引号号名称
                // console.log(index);
                console.log(i);
                // 回调函数第二个参数一定是 dom元素对象 也是自己命名
                console.log(domEle);
                // domEle.css("color"); 错误:dom对象没有css方法
                // 需要将 DOM 元素转换为 jquery 对象
                $(domEle).css("color", arr[i]);
                sum += parseInt($(domEle).text()); //相加(字符型要转换成数值型)
            })
            console.log(sum);
        })
    </script>
</body>

2. 主要用于数据处理

$.each(object,function (index, element) { xxx; });

$.each0)方法可用于遍历任何对象。主要用于数据处理,比如数组,对象。

里面的函数有2个参数: index 是每个元素的索引号;element 遍历内容。

    <script src="../jquery.min.js"></script>
</head>

<body>
    <div>1</div>
    <div>2</div>
    <div>3</div>
    <script>
        $(function () {
            // 如果针对于同一类元素做不同操作,需要用到遍历元素(类似for,但是比for强大)
            var arr = ["red", "green", "blue"];

            // 2. $.each() 方法遍历元素 主要用于遍历数据,处理数据
            $.each($("div"), function (i, ele) {
                console.log(i);
                console.log(ele);
            });
            // 遍历数组
            $.each(arr, function (i, ele) {
                console.log(i);
                console.log(ele);
            })
            // 遍历对象
            $.each({
                name: "andy",
                age: 18
            }, function (i, ele) {
                console.log(i); // 输出的是 name age 属性名
                console.log(ele); // 输出的是 andy  18 属性值
            })
        })
    </script>
</body>

二、创建元素

$('<li></li>'); //动态的创建了一个 <li>
    <script src="../jquery.min.js"></script>
</head>

<body>
    <ul>
        <li>原先的li</li>
    </ul>
    <div class="test">我是原先的div</div>
    <script>
        $(function () {
            // 1. 创建元素:创建后不会显示,需要添加后才会显示
            var li = $("<li>我是后来创建的li</li>");
            var div = $("<div>我是后妈生的</div>");
        })
    </script>
</body>

三、添加元素

1. 内部添加

element.append(''内容''); //把内容放入匹配元素内部最后面,类似原生 appendChild
element.prepend(''内容''); //把内容放入匹配元素内部最前面

内部添加元素,生成之后,它们是父子关系

2. 外部添加

element.after(''内容''); // 把内容放入目标元素后面
element.before(''内容''); // 把内容放入目标元素前面

外部添加元素,生成之后,他们是兄弟关系

    <script src="../jquery.min.js"></script>
</head>

<body>
    <ul>
        <li>原先的li</li>
    </ul>
    <div class="test">我是原先的div</div>
    <script>
        $(function () {
            // 1. 创建元素:创建后不会显示,需要添加后才会显示
            var li = $("<li>我是后来创建的li</li>");
            var div = $("<div>我是后妈生的</div>");


            // 2. 添加元素
            // (1) 内部添加
            // $("ul").append(li); // 内部添加并且放到内容的最后面 
            $("ul").prepend(li); // 内部添加并且放到内容的最前面
            // (2) 外部添加
            // $(".test").after(div); // 把内容放入目标元素后面
            $(".test").before(div); // 把内容放入目标元素前面
        })
    </script>
</body>

三、删除元素

element.remove(); // 删除匹配的元素(本身)
element.empty(); // 删除匹配的元素集合中所有的子节点
element.html(''''); // 清空匹配的元素内容

① remove 删除元素本身。

② empt() 和 html('' '') 作用等价,都可以删除元素里面的内容,只不过 html 还可以设置内容。

    <script src="../jquery.min.js"></script>
</head>

<body>
    <ul>
        <li>原先的li</li>
    </ul>
    <div class="test">我是原先的div</div>
    
    <script>
        $(function () {
            // 1. 创建元素:创建后不会显示,需要添加后才会显示
            var li = $("<li>我是后来创建的li</li>");
            var div = $("<div>我是后妈生的</div>");


            // 2. 添加元素
            // (1) 内部添加
            // $("ul").append(li); // 内部添加并且放到内容的最后面 
            $("ul").prepend(li); // 内部添加并且放到内容的最前面
            // (2) 外部添加
            // $(".test").after(div); // 把内容放入目标元素后面
            $(".test").before(div); // 把内容放入目标元素前面


            // 3. 删除元素
            // $("ul").remove(); 可以删除匹配的元素 自杀
            // $("ul").empty(); // 可以删除匹配的元素里面的子节点 孩子
            $("ul").html(""); // 可以删除匹配的元素里面的子节点 孩子
        })
    </script>
</body>

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

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

相关文章

c++11 标准模板(STL)(std::forward_list)(七)

定义于头文件 <forward_list> template< class T, class Allocator std::allocator<T> > class forward_list;(1)(C11 起)namespace pmr { template <class T> using forward_list std::forward_list<T, std::pmr::polymorphic_…

分享57个Python源码,总有一款适合您

Python源码 分享57个Python源码&#xff0c;总有一款适合您 57个Python源码下载链接&#xff1a;https://pan.baidu.com/s/1YZcrJAYFFy3OrdEN5IxnQQ?pwd6666 提取码&#xff1a;6666 采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 下面是文件的名字&#xff0c;我放…

Cadence Allegro 全局布线GRE规划应用及参数设置

GRE是Global Route Environment的缩写,中文意思为全局布线环境,运用具备阶层化意识的全面绕线引擎与图形式互连流程规划程序。通GRE技术在短时间就可以开发出包含众多互连总线与芯片引脚数的复杂且高速的设计组件。此外,运用GRE技术后便于工程师实现更佳的功能密度与系统效能…

ZYNQ-IP核封装笔记

step1&#xff1a;新建文件 将源码放进src中 step2&#xff1a;新建IP location&#xff08;可以多次使用&#xff0c;下次无需创建&#xff09; 点击“ Finish”之后&#xff0c; Vivado 会新建一个名为“ Manage IP”的工程&#xff0c; IP_produce就是我管理IP核的一个空…

【高级Java开发】类QQ聊天工具的设计与实现(代码已上传)

1、要求类QQ聊天工具的设计与实现&#xff0c;要求如下&#xff1a;用户可注册并通过密码录登。用户可通过查找添加自己的好友。用户可通过好友列表选择好友并与之对话。需实现聊天记录查看功能。界面美观大方&#xff0c;交互设计尽量参考QQ。代码结构合理&#xff0c;可复用性…

openGauss2.0.0之Java简单测试Sequence

openGauss2.0.0之Java测试Sequence一、实验环境二、实验目标二、实验步骤一、实验环境 项目Value操作系统openEuler服务器华为云弹性云服务器ECS 1 台 2核心 4GB内存数据库openGauss2.0.0 单机部署 二、实验目标 目标 学习openGauss2.0.0的序列的使用&#xff0c;熟悉JDBC编程方…

(10)QWidget的使用(one)

目录 QWidget的大小和位置 获取QWidget的大小和位置 设置QWidget的大小和位置 设置窗口固定大小 限定窗口的大小 坐标系统转换 内容边距 鼠标指针 鼠标指针的形状 自定义光标的使用 获取和设置光标的坐标 QWidget类是所有可视控件的基类&#xff0c;控件是用户界面…

【C进阶】内存函数

家人们欢迎来到小姜的世界&#xff0c;<<点此>>传送门 这里有详细的关于C/C/Linux等的解析课程&#xff0c;家人们赶紧冲鸭&#xff01;&#xff01;&#xff01; 客官&#xff0c;码字不易&#xff0c;来个三连支持一下吧&#xff01;&#xff01;&#xff01;关注…

Spring知识点记录

Spring知识点1. Spring简介&#xff08;此章略过&#xff09;1.1 Spring概述1.2 Spring家族1.3 Spring Framework2. IOC2.1 IOC容器2.2 基于XML管理bean2.2.1 入门案例&#xff08;ioc容器的整体思路&#xff09;2.2.2 获取bean的三种方式2.2.3 依赖注入2.2.3.1 setter注入2.2.…

指针数组与数组指针---傻傻分不清楚?

目录1.指针数组2.数组指针1.指针数组 什么是指针数组呢&#xff1f; 我们通过以前学过的数组进行类比&#xff1a; 整形数组是存放整形的数组字符数组是存放字符的数组所以&#xff0c;指针数组是存放指针(地址)的数组 整形数组的书写形式是int arr[10]&#xff0c;字符指针…

uniapp兼容小程序和H5遇见的坑

目录 一、报错 vue service.requestcomponentinfo:typeerror:cannot read property matches undefined H5不兼容uni-app的image标签 小程序externalClasses不兼容h5 H5不兼容van-picker和van-datetime-picker 一、报错 vue service.requestcomponentinfo:typeerror:cannot r…

【C语言进阶】 一篇带你掌握字符串和内存函数

目录一&#xff1a;strlen模拟实现&#xff1a;二&#xff1a;strcpy模拟实现&#xff1a;三&#xff1a;strcat模拟实现&#xff1a;四&#xff1a;strcmp模拟实现&#xff1a;五&#xff1a;strncpy模拟实现&#xff1a;六&#xff1a;strncat模拟实现&#xff1a;七&#xf…

如何正确地连接PLC与7种设备的输入输出线路

正确地连接输入和输出线路&#xff0c;是保证PLC可靠工作的前提。想要正确地连接PLC与7种设备的输入输出线路&#xff0c;就需注意以下几个方面&#xff1a;1.PLC与主令电器类设备的连接下图是PLC与按钮、行程开关、转换开关等主令电器类输入设备的接线示意图。图中的PLC为直流…

3、运算符

目录 一、算数运算符 二、关系运算符 三、逻辑运算符 一、算数运算符 MATLAB中的算术运算符有加、减、乘、除、点乘、点除等&#xff0c;其运算法则表&#xff1a; 示例1&#xff1a;数值与矩阵的算术运算 Aeye(2)Bones(2)CA*BDA.*B 运行结果&#xff1a; 此外&#xff0…

25.数组指针取*,指针和函数的关系,指针作为函数的参数

数组指针取* 数组指针取*&#xff0c;并不是取值的意思&#xff0c;而是指针的类型发生变化&#xff1b; 一维数组指针取*&#xff0c;结果为它指向的一维数组第0个元素的地址&#xff0c;它们还是指向同一个地方。二维数组指针取*&#xff0c;结果为一维数组指针&#xff0c…

Excel实战 第1章 数据处理

目录1 数据规范2. 导入数据3. 数据清洗3.1 重复数据处理3.2 缺失数据处理3.3 空格数据处理1 数据规范 2. 导入数据 3. 数据清洗 3.1 重复数据处理 数据透视表法&#xff08;首选&#xff09; 选中A、B两列&#xff0c;点击【插入】–》【数据透视表】 把号码拉到【行】&…

LeetCode 207. 课程表

&#x1f308;&#x1f308;&#x1f604;&#x1f604; 欢迎来到茶色岛独家岛屿&#xff0c;本期将为大家揭晓LeetCode 207. 课程表&#xff0c;做好准备了么&#xff0c;那么开始吧。 &#x1f332;&#x1f332;&#x1f434;&#x1f434; 一、题目名称 LeetCode 207. …

图表控件LightningChart.NET 系列教程(六):许可证管理介绍(下)

LightningChart.NET SDK 是一款高性能数据可视化插件工具&#xff0c;由数据可视化软件组件和工具类组成&#xff0c;可支持基于 Windows 的用户界面框架&#xff08;Windows Presentation Foundation&#xff09;、Windows 通用应用平台&#xff08;Universal Windows Platfor…

Docker面试题(史上最全 + 持续更新)

专题37&#xff1a;Docker面试题&#xff08;史上最全、定期更新&#xff09; 本文版本说明&#xff1a;V26 《尼恩面试宝典》升级的规划为&#xff1a; 后续基本上&#xff0c;每一个月&#xff0c;都会发布一次&#xff0c;最新版本&#xff0c;可以联系构师尼恩获取&…

VALL-E:Neural Codec Language Models are Zero-Shot Text to Speech Synthesizers

文章目录NLP中Bert的进展历史word embeddingELMOGPTBertAudioLM: a Language Modeling Approach to Audio Generationabstractintrorelated workVALL-E:Neural Codec Language Models are Zero-Shot Text to Speech Synthesizersabstractspeech quantizationtraining:condition…