JavaWeb--jquery篇

概述

jQuery是一个快速、简洁的JavaScript框架,是一个优秀的JavaScript代码库(框架)于2006年1月由John Resig发布。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。

引入jquery文件

<!-- 引入在线路径 -->
<!-- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> -->
<script src="../jquery/jquery.min.js"></script>

jquery.js 是未压缩版
jquery.min.js是压缩版

引入的jqery标签的顺序要在你的js之前引入

 优点

  • 访问和操作dom元素更简单; 
  • 控制页面样式更优秀; 
  • 对页面事件处理简单; 
  • 可扩展的jquery插件。 

jquery和js的不同 

jquery是对js的封装,js能做到的jquery不一定能做到,但是jquery能做到的js一定能做到 


 

入口函数

//jquery入口函数
    $(function(){


        console.log(jQuery)
        console.log($)


    })

入口函数的不同点

  • JavaScript 的入口函数是会等到所有内容,包括外部图片之类的文件加载完后,才执行。
  • jQuery的入口函数会等到全部DOM元素加载完毕,但不会等到图片也加载完毕,就会提前执行。
  •  JS的入口函数如果有多个,后面创建的入口函数会覆盖前面创建的入口函数,说白了就只能有一个入口函数
  • jQuery的入口函数可以有多个,后面创建的入口函数不会覆盖前面的入口函数。

js对象和jquery对象的相互转换

 //获取js对象
   let jsBox =  document.getElementsByClassName('box')[0];
    console.log(jsBox)

   
    // jsBox.addEventListener()

   //获取jquery对象
    console.log(  $('.box'))
    

    //js对象和jquery对象的方法是不能公用的
    // $('.box').addEventListener('click',function(){
    //     console.log(123)
    // })

     //js对象和jquery对象之间的相互转换

    // js对象转 jquery对象
      $(jsBox).css('color','red')

     //jquery转js对象
    //  通过[索引] 或者 get(索引)的方式
     $('.box').get(0).addEventListener('click',function(){
        console.log('被点击了')
     })

jquery选择器 

 

 

过滤选择器

 

 表单过滤选择器

 

操作内容

修改样式 

 

操作类名 

 

jquery控制元素显示和隐藏

jquery事件

$().on(事件, 子对象,data 
) 
// 其中 子对象可写可不写;// 事件: 使用最常用的map键值对的方式进行编写: 
$().on( 
{ '事件类型':function(){}, 
  '事件类型':function(){} 

} 
)


 $().off('被移除的事件'); 

    // $('div').on({

    //         'click': function (e) {
    //             console.log('单机事件')
    //             console.log($(e.currentTarget).attr('index'))
    //         },
    //         'dblclick':function(){
    //             console.log('双机事件')
    //         },
    //         'mouseover':function(){
    //             console.log('划入事件')
    //         }
    //     }
    // )


    $('body').on('click','div',function(){
        console.log(123)
    })

jquery遍历方式

 $('ul>li').each(function(i,e){
        //i 索引
        //e 当前的元素
        console.log(i,e)

    })

操作节点

 

 $('button:eq(1)').on('click',function(){

            //清空后代元素
            $('ul').empty();
        })

        $('button:eq(2)').on('click',function(){

            //删除元素
            $('ul').remove();
        })

 代码实现

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../jquery/jquery.js"></script>
</head>

<body>

    <button>添加</button>

    <button>empty</button>
    <button>remove</button>

    <button>查询父元素</button>
    <button>查询子元素</button>
    <button>查询后代元素</button>


    <button>返回除自已以外的所有兄弟元素</button>
    <button>返回下一个兄弟元素</button>
    <button>返回后面所有的兄弟元素</button>

    <ul>
        <li class="one">
            <span>456</span>
        </li>
    </ul>

</body>
<script>
    $(function () {

        $('button:eq(0)').on('click', function () {

            //创建节点
            let li = document.createElement('li');

            $(li).text('我是li')

            //将 li节点 添加到ul中

            //父元将将子元素添加到末尾; 
            $('ul').append(li)
            //父元将将子元素添加到开头; 
            // $('ul').prepend(li)


            //把a追加到b的内部,位置位于b的结尾; 
            // $(li).appendTo($('ul').get(0))
            // $(li).prependTo($('ul').get(0))


            //将元素添加到此元素的后面
            // $('.one').after(li)
            //将元素添加到此元素的前面
            // $('.one').before(li)


        })



        $('button:eq(1)').on('click', function () {

            //清空后代元素
            $('ul').empty();
        })

        $('button:eq(2)').on('click', function () {

            //删除元素
            $('ul').remove();
        })




        $('button:eq(3)').on('click', function () {

            //查询父元素
            console.log($('ul').parent());
        })

        $('button:eq(4)').on('click', function () {

            //查询子元素
            console.log($('ul').children());
        })
        $('button:eq(5)').on('click', function () {

            //查询后代元素
            console.log($('ul').find('*'));
        })



        $('button:eq(6)').on('click', function () {

            //查询除自己所有的兄弟元素
            console.log($('.one').siblings());
        })

        $('button:eq(7)').on('click', function () {

            //查询下一个兄弟元素
            console.log($('.one').next());
        })

        $('button:eq(8)').on('click', function () {

            //获取之后所有的兄弟元素
            console.log($('.one').nextAll());
        })
    })


</script>

</html>

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Faster-RCNN·代码解读系列01:Selective Search 和 R-CNN、Fast-CNN 简介

Selective Search 和 R-CNN、Fast-CNN 简介 1 目标检测算法简介1.0滑窗法的思路1.1 Selective Search 和 R-CNN 简介1.2.1 Selective Search简介1.1.1 Selective Search的思路1.1.2 Selective Search图解 1.2 Selective Search 和 Fast-CNN简介1.2.1 SPP和ROI Pooling简介1.2.2…

高级计算机体系结构--期末教材复习

Chap2 性能评测和并行编程性能评测并行编程为什么需要三次 barrier改进方法 Chap3 互连网络交换和路由二维网格中 XY 路由 死锁、活锁及饿死死锁避免的方法&#xff1a;虚通道、转弯模型二维网格中最小 西向优先、北向最后和负向优先算法转弯模型&#xff1a;超立方体的部分自适…

原生JavaScript实现录屏功能

1. 前言 使用JavaScript实现浏览器中打开系统录屏功能 示例图: 2. 源码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><…

深度学习——卷积神经网络(convolutional neural network)CNN详解(一)——概述. 步骤清晰0基础可看

在CNN的学习过程中我会提供相应的手算例子帮助理解训练过程。 其他关于神经网络的学习链接如下&#xff1a; 一、了解卷积神经网络 卷积神经网络的作用 总的来说&#xff0c;卷积神经网络的第一个主要作用是对图像进行特征提取&#xff0c;所谓特征提取&#xff0c;就是明白…

7.6第三天作业

一、在数据库中创建一个表student&#xff0c;用于存储学生信息 CREATE TABLE student( id INT PRIMARY KEY, name VARCHAR(20) NOT NULL, grade FLOAT ); &#xff08;1.&#xff09;先创建一个数据库 &#xff08;2.&#xff09;创建student表 查看是否创建成功 1、向studen…

QT c++函数模板与类模板的使用

QT c类模板的使用 #pragma once#include <QtWidgets/QMainWindow> #include "ui_QtWidgetsApplication5.h"class QtWidgetsApplication5 : public QMainWindow {Q_OBJECTpublic:QtWidgetsApplication5(QWidget *parent nullptr);~QtWidgetsApplication5();te…

代码随想录算法训练营第13天|二叉树的递归遍历、二叉树的迭代遍历、二叉树的统一迭代法、102.二叉树的层序遍历

打卡Day13 1.理论基础2.二叉树的递归遍历3.二叉树的迭代遍历3.二叉树的统一迭代法4.102.二叉树的层序遍历扩展107. 二叉树的层序遍历 II199.二叉树的右视图637.二叉树的层平均值429.N叉树的层序遍历515.在每个树行中找最大值116.填充每个节点的下一个右侧节点指针117. 填充每个…

嵌入式C语言面试相关知识——关键字(不定期更新)

嵌入式C语言面试相关知识——关键字 一、博客声明二、C语言关键字1、sizeof关键字2、static关键字3、const关键字4、volatile关键字5、extern关键字 一、博客声明 又是一年一度的秋招&#xff0c;怎么能只刷笔试题目呢&#xff0c;面试题目也得看&#xff0c;想当好厂的牛马其实…

数据可视化之智慧城市的脉动与洞察

在数字化转型的浪潮中,城市作为社会经济发展的核心单元,正经历着前所未有的变革。城市数据可视化大屏看板作为这一变革中的重要工具,不仅极大地提升了城市管理效率,还为公众提供了直观、全面的城市运行状态视图,成为智慧城市建设不可或缺的一部分。本文将深入探讨以“城市…

一文理解 Treelite,Treelite 为决策树集成模型的部署和推理提供了高效、灵活的解决方案

&#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 一、什么是 Treelite&#xff1f; Treelite 是一个专门用于将决策树集成模型高效部署到生产环境中的机器学习模型编译器&#xff0c;特别适合处理大批量数据的推理任务&#xff0c;能够显著提升推理性能…

Java之网络面试经典题(一)

目录 ​编辑 一.Session和cookie Cookie Session 二.HTTP和HTTPS的区别 三.浅谈HTTPS为什么是安全的&#xff1f; 四.TCP和UDP 五.GET和Post的区别 六.forward 和 redirect 的区别&#xff1f; 本专栏全是博主自己收集的面试题&#xff0c;仅可参考&#xff0c;不能相…

嵌入式Linux系统编程 — 7.2 进程的环境变量

目录 1 什么是进程的环境变量 2 环境变量的作用 3 应用程序中获取环境变量 3.1 environ全局变量 3.2 获取指定环境变量 getenv 4 添加/删除/修改环境变量 4.1 putenv()函数添加环境变量 4.2 setenv()函数 4.3 unsetenv()函数 1 什么是进程的环境变量 每一个进程都有一…

Android - Json/Gson

Json数据解析 json对象&#xff1a;花括号开头和结尾&#xff0c;中间是键值对形式————”属性”:属性值”” json数组&#xff1a;中括号里放置 json 数组&#xff0c;里面是多个json对象或者数字等 JSONObject 利用 JSONObject 解析 1.创建 JSONObject 对象&#xff0c;传…

快手大模型首次集体亮相,用AI重塑内容与商业生态

7月6日&#xff0c;在2024世界人工智能大会期间&#xff0c;快手举办了以“新AI新应用新生态”为主题的大模型论坛&#xff0c;会上&#xff0c;快手大模型首次集体亮相&#xff0c;视频生成大模型可灵、图像生成大模型可图等产品的多项新功能正式发布。 继图生视频、视频续写…

Appium启动APP时报错Security exception: Permission Denial

报错内容Security exception: Permission Denial: starting Intent 直接通过am命令尝试也是同样的报错 查阅资料了解到&#xff1a;android:exported | App quality | Android Developers exported属性默认false&#xff0c;所以android:exported"false"修改为t…

QT学习积累——如何提高Qt遍历list的效率

目录 引出Qt遍历list提高效率显示函数的调用使用&与不使用&除法的一个坑 总结自定义信号和槽1.自定义信号2.自定义槽3.建立连接4.进行触发 自定义信号重载带参数的按钮触发信号触发信号拓展 lambda表达式返回值mutable修饰案例 引出 QT学习积累——如何提高Qt遍历list…

Springboot学习之用EasyExcel4导入导出数据(基于MyBatisPlus)

一、POM依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><m…

Kotlin中的数据类型

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 目录 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌…

使用WinSCP工具连接Windows电脑与Ubuntu虚拟机实现文件共享传输

一。环境配置 1.首先你的Windows电脑上安装了VMware虚拟机&#xff0c;虚拟机装有Ubuntu系统&#xff1b; 2.在你的windows电脑安装了WinSCP工具&#xff1b; 3.打开WinSCP工具默认是这样 二。设置WinSCP连接 打开WinSCP&#xff0c;点击新标签页&#xff0c;进入到如下图的…

Ubuntu20.04配置TurtleBot3 Waffle Pi远程控制

这里写目录标题 0. 机器人配置1. Ubuntu20.04配置TurtleBot3 Waffle Pi远程控制1.1 TurtleBot3 Waffle Pi端配置1.2 PC端配置1.2.1 安装turtlebot3的环境配置1.2.2 创建项目并安装Turtlebot31.2.3 配置环境变量 1.3 PC端与TurtleBot3进行通信1.3.1 PC端与机器人端互PING和SSH连…