首页 > 其他分享 >关于jQuery的操作

关于jQuery的操作

时间:2022-12-26 20:12:39浏览次数:40  
标签:jQuery function dom li 关于 background 操作 css

jQuery简介

 简化了JS 
 ​
 类似于
 后端 JDBC(操作数据库的基本API)   dbutils(封装JDBC)     xxx.jar
 前端 JS                         jQuery               xxx.js

jQuery的官网https://jquery.com/

两种引入jquery-2.1.4.js文件的方式

 1.直接引用本地文件
  <script src="/day05/js/jquery-2.1.4.js"></script>
 ​
 2.使用cdn镜像加速
    <script src="https://libs.baidu.com/jquery/2.0.0/jquery.min.js"</script>

min.js和.js的区别

 jquery-2.1.4.js
  开发阶段
 jquery-2.1.4.min.js
  上线,部署到服务器  

jquery.js是完整的未压缩的jQuery库,文件比较大,一般用于阅读学习源码或修改源码,一般不用于线上项目。 jquery.min.js是由完整版的jQuery库经过压缩得来,压缩后功能与未压缩的完全一样,只是将其中的空白字符、注释、空行等与逻辑无关的内容删除,并进行一些优化。这个版本一般用于网站引用使用,减小文件体积,降低网站流量,提升访问速度等。

jQuery的基本结构

 在JS中是使用 dom对象
 在jQuery中是使用 jQuery对象
 ​
 jQuery()工厂函数$:将参数转换成jQUery对象
 jQuery对象才能调用jQUery的方法
 ​
 jQuery(对象).方法(function(){});
 ​
 jQuery就是$
 jQuery(doucument).ready(function(){})
 $(doucument).ready(function(){})
 最终可以简写为 $(function(){})
 ​

dom对象和jQuery对象

 JS和jQuery可以混用,因为jQuery底层就是JS
 但是 dom对象只能调用dom方法
  jQuery对象只能调用jQuery方法
 
 //dom对象转成jquery对象: 使用$()工厂函数
  var domobj=document.getElementById("divtest");
  var jqueryobj=$(domobj);
  juqeryobj.html("bbb")
  //html()方法,()里面没有参数就显示选中标签的内容
  有参数就显示()里面的内容
 //jquery对象转成dom对象
  var jqueryobj=$("#divtest");
  //var domobj=jqueryobj[0];
  var domobj=jqueyobj.get(0);
  domobj.innerHTML="bbb";

自动迭代循环

 <!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>Document</title>
     <script src="/day05/js/jquery-2.1.4.js"></script>
     <script>
         $(function(){
             $("#btnok").click(function(){
                 //js里面操作多个div,通过循环找到每一个然后操作数组将每一个都赋值
                 // var items=document.getElementsByTagName("div");
                 // for(var i=0; i<items.length;i++){
                 //     items[i].innerHTML="bbb";
                 // }
                 
                 //jQuery里面封装了方法可以自动迭代
                 // $("div").html("bbb")
 ​
                 //也可以自己定义循环体方法
                 //也可以带参数1个参数就是下标(从0开始的)
                 //           2个参数就是下标和对象
                 // $("div").each(function(i,obj){
                     // this.innerHTML="bbb";
                     // $(this).html("ccc");
                     // console.log(i)//输出为0123
                     // console.log(this==obj)//输出为true;
                     //两种写法
                    //1.常用写法
                     // $("div").each(function(i){
                     //     $(this).html("b"+(i+1));
                     // })
                      //2.
                     // $.each($("div"),function(i){
                     //     $(this).html("ccc"+(i+1));
                     // });
                     
                     // dom对象.属性=
                     //dom对象.setAttribute("属性名","属性值")
                     //dom对象.getAttribute("属性名")
             
                     // $("img").attr("src","/day05/img/class1-"+(i+1)+".jpg");
                     //通过自定义循环方法将每个图片通过attr赋值给img
                     //1.
                     // $("img").each(function(i){
                     //     $(this).attr("src","/day05/img/class1-"+(i+1)+".jpg");
                     // })
                     //2.
                 //     $.each($("img"),function(i){
                 //     $(this).attr("src","/day05/img/class1-"+(i+1)+".jpg");
                 // });
 ​
               // })
            })
          })
     </script>
 </head>
 ​
 <body>
     <img /><br/>
     <img /><br/>
     <img /><br/>
     <img /><br/>
     <div>aaa</div>
     <div>aaa</div>
     <div>aaa</div>
     <div>aaa</div>
     <input  type="button" id="btnok" value="ok"/>
 </body>
 </html>

链式编程

 $(function(){
            //链式编程可以直接在后面.方法继续写
            // $("div").mouseover(function(){
            //     $(this).css("background","red")
            // }).mouseout(function(){
            //     $(this).css("background","white")
            // });
                $("div").css("font-size","16px").css("color","red");
            })

选择器

 操作对象,找到指定的对象
    dom.getElementXxxxx

基本选择器

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jQuery基本选择器示例</title>
<style type="text/css">
#box {

border: 2px solid #000;
padding: 5px;
}
</style>
<script src="js/jquery-1.8.3.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("h2").click(function () {
//标签选择器
//$("h3").css("background","red");
//类选择器
//$(".title").css("background","red");
//id选择器
//$("#box").css("background","red");
//所有标签
//$("*").css("background","red");
//交集选择器 标签名.class 标签名.#id
//$("h2.title").css("background","red");
//并集选择器,集体声明
$("h2.title,dd").css("background","red");
});
})
</script>
</head>

<body>
<div id="box"> id为box的div
<h2 class="title">class为title的h2</h2>
<h3 class="title">class为title的h3</h3>
<h3>热门排行</h3>
<dl>
<dt><img src="images/ch04/case_1.gif" width="93" height="99" alt="斗地主" /></dt>
<dd class="title">斗地主</dd>
<dd>休闲游戏</dd>
<dd>QQ斗地主是国内同时在线人数最多的棋牌游戏......</dd>
</dl>
</div>
</body>

</html>

层次选择器

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jQuery层次选择器示例</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
line-height: 30px;
}

body {
margin: 10px;
}

#menu {
border: 2px solid #03C;
padding: 10px;
}

a {
text-decoration: none;
margin-right: 5px;
}

span {
font-weight: bold;
padding: 3px;
}

h2 {
margin: 10px 0;
}
</style>
<script src="js/jquery-1.8.3.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("h2").click(function () {
//后代选择器
//$("#menu span").css("background","red");
//子选择器
//$("#menu>span").css("background","red");
//匹配所有紧接在 prev 元素后的 next 元素
//紧接的下一个兄弟节点
//$("h2 + div").css("background","red");
//匹配 prev 元素之后的所有 siblings 元素
//$("h2 ~ dl").css("background","red");
$("h2").siblings().css("background","red");
});
});
</script>
</head>

<body>
<div id="menu">
<dl>
<dt>北京周边旅游<span>特价</span></dt>
<dd><a href="#">按天数</a> <a href="#">海边旅游</a> <a href="#">草原</a></dd>
</dl>
<h2>全部旅游产品分类</h2>
<dl>
<dt>北京周边旅游<span>特价</span></dt>
<dd><a href="#">按天数</a> <a href="#">海边旅游</a> <a href="#">草原</a></dd>
</dl>
<dl>
<dt>景点门票</dt>
<dd><a href="#">名胜</a> <a href="#">暑期</a> <a href="#">乐园</a></dd>
<dd><a href="#">山水</a> <a href="#">双休</a></dd>
</dl>
<span>更多分类</span>
</div>
</body>

</html>

属性选择器

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jQuery属性选择器示例</title>
<style type="text/css">
#box {

border: 2px solid #000;
padding: 5px;
}
</style>
<script src="js/jquery-1.8.3.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("h2").click(function () {
//有title属性的h2标签
//$("h2[title]").css("background-color", "#09F");
//class属性值是odds的标签
//$("[class=odds]").css("background-color","#09F");
//id属性值不是test的所有标签
//$("div[class!=testnot]").css("background-color","#09F");
//title属性值以h开头的标签
//$("[title^=h]").css("background-color","#09F");
//title属性值以jp结尾的标签
//$("[title$=jp]").css("background-color","#09F");
//title属性值包含s的标签
//$("[title*=s]").css("background-color","#09F");
//li标签+有class属性+title属性值包含y
$("li[class][title*=y]").css("background-color","#09F");
});
});
</script>
</head>

<body >
<div class="test" title="yyy">aaaaa</div>
<div id="box">
<h2 class="odds" title="cartoonlist">动画列表</h2>
<ul>
<li class="odds" title="kn_jp">名侦探柯南</li>
<li class="evens" title="hy_jp">火影忍者</li>
<li class="odds" title="ss_jp">死神</li>
<li class="evens" title="yj_jp">妖精的尾巴</li>
<li title="yh_jp">银魂</li>
<li class="evens" title="hm_da">黑猫警长</li>
<li class="odds" title="xl_ds">仙履奇缘</li>
</ul>
<h2>h2h2</h2>
</div>
</body>

</html>

基本过滤选择器示例

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jQuery基本过滤选择器示例</title>
<script src="js/jquery-1.8.3.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("h2").click(function () {
//第一个li
//$("li:first").css("background-color", "#09F");
//最后一个li
//$("li:last").css("background-color","#09F");
//$("li").last().css("background-color","#09F");
//class属性不是three的li
//$("li:not(.three)").css("background-color","#09F");
//所有偶数行的li
//$("li:even").css("background-color","#09F");
//所有奇数行的li
//$("li:odd").css("background-color","#09F");
//下标为1的li
//$("li:eq(1)").css("background-color","#09F");
//下标大于1的li
//$("li:gt(1)").css("background-color","#09F");
//下标小于1的li
//$("li:lt(1)").css("background-color","#09F");
//所有标题标签
//$(":header").css("background-color","#09F");
//没有id属性的div标签
$("div:not([id])").css("background-color","#09F");
});
});
</script>
</head>

<body>
<div id="div1">111</div>
<div >222</div>
<h1>111</h1>
<h2>网络小说</h2>
<h3>333</h3>
<ul>
<li>王妃不好当</li>
<li>致命交易</li>
<li class="three">迦兰寺</li>
<li>逆天之宠</li>
<li>交错时光的爱恋</li>
<li>张震鬼故事</li>
<li>第一次亲密接触</li>
</ul>
</body>

</html>

操作属性

js
dom.属性
dom.setAttribute()
dom.getAttribute()
jquery
juery.attr("属性名")
juery.attr("属性名","属性值")
操作布尔值的属性checked selected disabled这些属性
juery.prop("checked")
juery.prop("checked",ture)

操作样式

js
dom.style.样式属性="样式属性值"
dom.className= "类样式"

jQuery
jquery.css("样式属性","样式属性值")
jquery.addClass("类样式")

操作标签中的内容

js
dom.innerHTML
dom.innerText
dom.value

jQuery
jquery.html()
jquery.text()
jquery.val()

动态添加元素,删除元素

js
jquery
创建元素:拼标签
var html="标签字符串";

$(html).appendTo($("#id"))

删除元素
$("#id").remove();

常用事件

js
dom.onClick=function(){}
dom.onmouseover=function(){}

jquery
jquery.click(function(){});
.mouseover()
.mouserout()
.ready()
.blur() 失去焦点
.foucus() 获取焦点

数据验证

标签:jQuery,function,dom,li,关于,background,操作,css
From: https://www.cnblogs.com/huangjiangyang/p/17006736.html

相关文章

  • Python序列类型及操作
    文章目录​​一.序列类型定义(sequence)​​​​1.序列是具有先后关系的一组元素​​​​2.序列是一个基类类型,一般使用序列类型衍生出来的类型​​​​3.序号的定义​​......
  • Python字典类型及操作
    文章目录​​一.字典类型定义(dict)​​​​1.映射​​​​2.字典类型是映射的体现​​​​3.创建字典​​​​(1).直接创建字典​​​​(2).使用内置函数dict()创建字......
  • Python集合类型及操作
    文章目录​​一.集合类型概述(set)​​​​1.定义​​​​2.特点​​​​二.集合的创建与访问​​​​1.直接创建集合​​​​(1).定义​​​​(2).语法​​​​(3).......
  • 操作系统——进程管理的功能
    一.进程控制1.什么是进程控制?进程控制是进程管理中的最基本的功能,主要包括创建新进程、终止已完成的进程、将因发生异常情况而无法继续运行的进程置于阻塞状态、负责进程......
  • 操作系统——输入输出系统
    一.内容总览I/O系统是OS的重要组成部分,用于管理诸如打印机、扫描仪等I/O设备,以及用于存储数据,如磁盘驱动器和磁带机等各种存储设备。二.I/O系统(1).I/O系统管理的主要对......
  • 操作系统——存储器管理的功能
    一.内容总览二.内存空间的分配和回收为了能将用户程序装入内存,必须为它分配一定大小的内存空间。连续分配方式是最早出现的一种存储器分配方式该分配方式为一个用户程序......
  • 数据库 -- 基础操作
    不知道少了什么,总觉得没有以前快乐,不后悔遇见谁,只后悔变成现在的模样。。。---- 网易云热评一、环境安装PHPstudy下载地址,一路下一步,安装的时候路径不要有中文或者空格​......
  • 关于保险的基础知识总结
    目录​​1、学习目标​​​​2、关于保险的一些疑问​​​​2-1、保险要不要买​​​​2-2、有社保,为什么还要买保险​​​​3、关于保险的一些常识​​​​3-1、保险的分类......
  • ISP信号处理基本概念与操作
    目录​​1、图像的数字化+数字信号处理(ISP)​​​​2.直方图(histogram)/积分直方图(cumulativehistogram)/图像的直方图均衡​​​​3、查找表lookuptable​​​​4、Filte......
  • 关于团队管理过程中的一些总结
    “ 在职场当中要想升职、加薪,除了岗位相关的必备硬技能,一些通用的软技能也是必须要掌握的,比如沟通、管理..... 毕竟是人多力量大,要想把事情做好,还是需要有个好的团队,那就......