jQuery(上)

简介: jQuery

1.jQuery基础

jQuery作为一个js函数库,提供大量的扩展,方法快捷


1.1 安装使用

两种方法:1.官网下载 2.使用CDN网页链接

1.jQuery官网下载版本,有压缩和未压缩版的都可以

下载后放入网页的同一目录下,就可以使用调用jQuery

daadf1460335476093612855a126a699.png

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


2.使用CDN(内容发布网路)引用,如果你的站点用户是国内的,建议使用百度、又拍云、新浪等国内CDN地址,如果你站点用户是国外的可以使用谷歌和微软。


//Staticfile CDN
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
//百度 CDN
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js">
//又拍云 CDN
<script src="https://upcdn.b0.upaiyun.com/libs/jquery/jquery-2.0.2.min.js">
//新浪 CDN
<script src="https://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js">
//google CDN
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
//Microsoft CDN
<script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-1.9.0.min.js">


1.2 语法

通常使用( 美元符号 ) 来表示 j Q u e r y 基础语法:模型: (美元符号)来表示jQuery 基础语法:模型:(美元符号)来表示jQuery基础语法:模型:(selector).action()

示例:

$(this).hide()-隐藏当前元素
$("p").hide()-隐藏所有<p>元素
$("p.test").hide()-隐藏所有class="test"的<p>元素
$("#test").hide() - 隐藏id="test"元素


文档就绪事件:

所有jQuery函数位于一个document ready函数中:防止文档在完全加载之前运行jQuery代码,即在DOM加载完成后才可以对DOM进行操作

$(document).ready(function(){
  //开始写jQuery代码
});
//简洁写法
$(function(){
  //开始写jQuery代码..
})


1.3 选择器

1.基本选择器
$<"p"> 元素选择器
$("#test") #id选择器
$(".test") .class选择器
$("h1,div,p") 组合选择器
2.层次选择器
$("#id>.classname") //子元素选择器
$("#id.classname")  //后代元素选择器
$("#id + .classname")  //紧邻下一个元素选择器
$("#id ~ .classname") //兄弟元素选择器
3.过滤选择器(重点)
$("li:first") //第一个li
$("li:last")  //最后一个li
$("list:even")  //挑选下表为偶数的li
$("list:odd")   //挑选下标为奇数的li
$("li:eq(4)")   //下标等于4的li(第五个元素)
$("li:not(#runoob)")  //挑选除 id="runoob"以外的所有li
3.2内容过滤 
$("dic:contains("Runob")")  //包含Runob文本的元素 
$("td:empty")  //不包含子元素或者文本的空元素
$("div:has(selector)")  //含有选择器所匹配的元素
$("td:parent")  //包含子元素或者文本的元素
3.3可见性过滤选择器
$("li:hidden") //匹配所有不可见元素,或type为hidden的元素
$("li:visible") //匹配所有可见元素
3.4属性过滤选择器
$("div[id]")  //所有含有id属性的div
$("div[id='123']")  //id属性值为123的div元素
$("div[id^='qq']")  //id属性值以qq开头的div元素
$("div[id$='zz']")   //id属性值以zz结尾的div元素
$("div[id*='bb']")    //id属性值包含bb的div元素
$("input[id][name$='man']")    //多属性选过滤,同时满足两个属性的条件的元素
3.5状态过滤选择器
$("input:enabled")   //匹配可用的input
$("input:disabled")   //匹配不可用的input
$("inout:checked")      //匹配选中的input
$("option:selected")  //匹配选中的option
3.4表单选择器
$(":input")  //匹配所有input元素
$(":text")  //匹配所有的单行文本框,$(":text")等价于$("[type=text]")
$(":password") //所有密码框
$(":radio")  //所有单选框
$(":checkbox")  //所有复选框
$(":submit")  // 所有提交按钮
$(":reset")  //所有重置按钮
$(":button")  //所有button按钮
$(":file")  //所有文本域
3.5其他
$("*") 选取所有元素
$("p.intro") 选取class为introde的<p>元素
$("ul li:first") 选取第一个<ul>元素的第一个<li>元素
$("div + p") 每个<div>元素相拼的下一个<p>元素
$("div ~ p") <div>元素同级的所有<p>元素
$(":file") 所有带有type="file"的input元素


1.4 事件

[事件大全](https://www.runoob.com/jquery/jquery-ref-events.html)
几个常用的事件方法:
bind()  向元素添加事件处理程序
click() 添加出发click事件
focus() 添加出发focus事件
实例:hover()方法
    <script>
        $(document).ready(function(){
            $("p").hover(function(){
                $("p").css("background-color","yellow");
            },function(){
                $("p").css("background-color","pink");
            });
        });
    </script>


样式:放上去黄色,离开粉色

注意:对于由jQuery动态生成的元素,不能直接绑定常用的事件,如click,因为这些元素属于动态生成,使用live和on事件方法

例如:$(".box").click(function(){});
类名为box的元素是由jqery动态生成,以上写法将会无效,那么可以改为如下:
$(".box").live("click",funtion(){});
或者 $(".box").on('click',function(){});


2.jQuery效果

2.1 隐藏|显示

jQuery.hide() 和 jQuery.show() 隐藏和显示

    <script>
        $(document).ready(function(){
            $("#hide").click(function(){
                $("p").hide();
            });
            $("#show").click(function(){
                $("p").show();
            });
        });
    </script>
</head>
<body>
<p>如果你点击"隐藏"按钮,我将会消失</p>
<p>如果你点击"显示"按钮,我将会出现</p>
    <button id = "hide">隐藏</button>
    <button id ="show">显示</button>
</body>

4bee66946008415bb99c7ab5fa4109f0.png


jQuery toggle() 可以切换hide()和show() 方法

    <script>
        $(document).ready(function(){
            $("button").click(function(){
                $("p").toggle();
            });
        });
    </script>
</head>
<body>
<p>如果你点击"隐藏"按钮,我将会消失</p>
<p>如果你点击"显示"按钮,我将会出现</p>
<button id = "p">切换</button>
</body>

f05c413d7d804f4693934740a455699d.png


2.2 滑动

jQuery Fading方法包含下面四种fade方法:

jQuery.fadeln() jQuery.fadeOut() jQuery.fadeToggle() jQuery.fadeTo()

以fadeIn()为例:
<script src = "jquery-3.6.0.min.js"></script>
    <script>
        $(document).ready(function(){
           $("button").click(function(){
               $("#div1").fadeIn();
               $("#div2").fadeIn("slow");
               $("#div3").fadeIn(3000);
           });
        });
    </script>
</head>
<body>
<p>以下实例演示了fadeIn()使用了不同参数的效果</p>
<button>点击淡入div元素</button>
<br><br>
<div id = "div1" style="width:80px;height:80px;display:none;background-color:#ff0000"></div><br>
<div id = "div2" style="width:80px;height:80px;display:none;background-color:green"></div><br>
<div id = "div3" style="width:80px;height:80px;display:none;background-color:blue"></div><br>
</body>
//fadeOut用于淡出可见元素  fadeToggle() 用于fadeIn()和fadeOut()之间方法进行切换
//jQuery fadeTO() 允许渐变为给定的不透明度(值介于0-1之间)

c3fb5ad6387b4724b5bd84d066ef016c.png


jQuery滑动方法:slideDown() slideUp() slideToggle()三种方法

以slidetoggle()为例:
    <script>
        $(document).ready(function(){
            $("#flip").click(function(){
                $("#panel").slideToggle("slow");
            });
        });
    </script>
    <style type="text/css">
    #panel
    {
        padding: 50px;
        display:none;
    }
    #panel,#flip
    {
        padding:5px;
        text-align:center;
        background-color: skyblue;
        border:solid 1px red;
    }
    </style>

3c274497b8ba4ccfa92a8a4c8480a76e.png


2.3 动画

jQuery动画-animate()方法

//单个属性
$(document).ready(function(){
  $("button").click(function(){
    $("div").animate({left:"250px"});
  });
});
//多个属性
$(document).ready(function(){
  $("button").click(function(){
    $("div").animate({
      leftL:"250px",
      opacity:'0.5',
      height:'150px',
      width:'150px'
    });
  });
});
//使用相对值
$(document).ready(function(){
  $("button").click(function(){
    $("div").animate({
      left:'250px',
      heifht;"+=150px",
      width:'+=150px'
    });
  });
});
//使用预定义的值
$(ddocument).ready(function(){
  $('button').click(function(){
    $("div").animate({
      height:"toggle"
      });
  });
});
//使用队列功能
$(document).ready(function(){
  $("button").click(function(){
      var div =$('div');
      div.animate({height:'300px',opacity:'0.4'},'slow');
      div.animate({width:'300px',opacity:'0.8'},'slow');
      div.animate({height:'100px',opacity:'0.4'},'slow');
      div.animate({width:'100px',opacity:'0.8'},'slow');
  });
});
    <script>
        $(document).ready(function(){
            $("button").click(function(){
                $("div").animate({left:'250px'});
            });
        });
    </script>
</head>
<body>
<button>开始动画</button>
<p>改变位置</p>
<div style = "background-color: bisque;height: 100px;width:100px;position:absolute;"></div>

5f954b2e23e94877af7b3e720de7be09.png

多个属性:
    <script>
        $(document).ready(function(){
            $("button").click(function(){
                $("div").animate({
                    left:'250px',
                    opacity:"0.5",
                    height:'150px',
                    width:'150px'
                });
            });
        });
    </script>

86bb65ed31c5451896c9e481995209c7.png


jQuery stop()方法 停止动画

$("#stop").click(function(){
  $("#panel").stop();
});


callback实例:callback是在隐藏效果完全实现后回调函数

$("button").click(funtion(){
  $('p').hide('slow',function(){
    alert("段落现在被隐藏了");
  });
});


jQuery方法链接:允许在相同的元素上运行多条jQuery命令

$("#p1").css("color","red").slideUp(2000).slideDown(2000);


相关文章
|
数据采集 数据处理 C语言
单片机:探索其原理、应用与编程实践
单片机:探索其原理、应用与编程实践
370 1
|
4月前
|
人工智能 自然语言处理 Serverless
Vibecoding 新体验:实测 Qwen3 Coder 代码生成效果
Qwen3 Coder 是一款强大的编程大语言模型,支持超长 1M 上下文,具备卓越的代码生成能力。结合 VibeCoding 方案,可助力开发者与企业快速构建复杂应用,实现自然语言生成系统,提升开发效率与生产力。
|
Linux 网络安全 Python
linux centos上安装python3.11.x详细完整教程
这篇文章提供了在CentOS系统上安装Python 3.11.x版本的详细步骤,包括下载、解压、安装依赖、编译配置、解决常见错误以及版本验证。
10327 3
linux centos上安装python3.11.x详细完整教程
|
SQL 机器学习/深度学习 数据库
SQL与Python集成:数据库操作无缝衔接
1. Python与SQL集成的关键步骤 在开始之前,确保你已经安装了必要的Python库,如`sqlite3`(用于SQLite数据库)或`psycopg2`(用于PostgreSQL数据库)。这些库提供了Python与SQL数据库之间的接口。
|
数据可视化 JavaScript API
鸿蒙低代码可视化ArkUI代码生成器
鸿蒙低代码可视化ArkUI代码生成器
441 0
|
10月前
|
人工智能 算法 搜索推荐
单纯接入第三方模型就无需算法备案了么?
随着人工智能的发展,企业接入第三方模型提升业务能力的现象日益普遍,但算法备案问题引发诸多讨论。根据相关法规,无论使用自研或第三方模型,只要涉及向中国境内公众提供算法推荐服务,企业均需履行备案义务。这不仅因为服务性质未变,风险依然存在,也符合监管要求。备案内容涵盖模型基本信息、算法优化目标等,且需动态管理。未备案可能面临法律和运营风险。建议企业提前规划、合规管理和积极沟通,确保合法合规运营。
|
Web App开发 编解码 移动开发
网页不安装插件如何播放RTSP/FLV视频
点量云流提出了一种基于后台拉流转码的方案,将RTSP/RTMP/FLV等协议的视频流转换为WebRTC格式,实现在现代浏览器中的无插件播放。此方案具有良好的兼容性,支持主流浏览器,无需担心兼容问题。它利用浏览器硬件解码能力,减少终端计算资源消耗,并且具备低延迟和高实时性的优点,延迟可控制在100ms以内,非常适合摄像头监控领域。此外,前端集成简单,仅需使用标准WebRTC接口即可接入,降低了复杂度。
678 9
Broadcast Channel API 使用方式
使用Broadcast Channel API,页面A创建并发送消息到&#39;myChannel&#39;,而页面B在同一域名下监听该通道,接收并打印消息。当不再使用时,应关闭通道以释放资源。此示例展示了API的基本用法,可按需扩展。
|
SQL 算法 Oracle
在线sql格式化工具
让SQL代码整洁如新,在线SQL格式化工具助力高效编程
776 1
|
存储 监控 算法
XXL-JOB内部机制大揭秘:让任务调度飞起来
【8月更文挑战第14天】在大数据时代,高效的任务调度系统是支撑业务稳定运行与快速迭代的基石。XXL-JOB,作为一款轻量级、分布式任务调度平台,凭借其灵活的配置、强大的扩展性和高可用特性,在众多任务调度框架中脱颖而出。今天,我们就来深入揭秘XXL-JOB的内部机制,看看它是如何让任务调度“飞起来”的。
947 0