3.1 jQuery框架的CSS方法

jQuery框架提供了css方法,我们通过调用该方法传递对应的参数,可以方便的来批量设置标签的CSS样式。

使用JavaScript设置标签的样式相对来说比较麻烦,而如果需要批量的设置多个标签的样式那需要写很多代码,使用jQuery可以为我们简化该过程。

     使用原生的方式来设置标签的样式(代码示例)

 1 <body>
2 <div>我是div标签</div>
3 <button id="btnID">按钮</button>
4 <script>
5 window.onload = function () {
6 var oBtn = document.getElementById("btnID");
7 oBtn.onclick = function () {
8 var oDiv = document.getElementsByTagName("div")[0];
9 oDiv.style.height = "50px";
10 oDiv.style.width = "200px";
11 oDiv.style.background = "red";
12 }
13 }
14 </script>
15 </body>

    使用jQuery中的css方法来设置标签的样式(代码示例)

 1 <body>
2 <div>我是div标签</div>
3 <button id="btnID">按钮</button>
4 <script src="jquery-3.2.1.js"></script>
5 <script>
6 $(function () {
7 $("#btnID").click(function () {
8 $("div").css("height","50px").css("width","200px").css("background","red");
9 })
10 })
11 </script>
12 </body>

CSS方法的语法

① $("selector").css(name,value);
② $("selector").css(name1,value).css(name2,value)...;
③ $("selector").css( { name1 : value , name2 : value})

  代码示例

 1 <script>
2 $(function () {
3 $("#btnID").click(function () {
4 //01 CSS方法的第一种使用方式
5 //$("div").css("height","50px");
6 //$("div").css("width","200px");
7 //$("div").css("background","red");
8 //02 CSS方法的第二种使用方式:链式编程
9 //$("div").css("height","50px").css("width","200px").css("background","red");
10 //03 CSS方法的第三种使用方式:传递样式键值对的对象作为参数
11 $("div").css({
12 "height":"100px",
13 "width":"200px",
14 "background":"red"
15 })
16 })
17 })
18 </script>

  3.2 jQuery框架操作Class

  jQuery框架中操作class的方法主要有:

addClass : 为选中的所有标签批量的添加Class
hasClass:检查选定的标签中是否存在指定的Class
removeClass:把选定标签中指定的Class删除
toggleClass: 切换Class

addClass:为选中的所有标签批量的添加Class。

① $("selector")addClass("class1");
② $("selector")addClass("class1 class2");
③ $("selector")addClass("class1").addClass("class2");

hasClass:检查选定的标签中是否存在指定的Class。

  只要选中的所有标签中有一个标签存在该Class,那么就把返回true,如果选中的所有标签中都没有找到该class ,那么就返回false。

$("selector")hasClass("class1");

removeClass:把所有选定标签中指定的Class删除。

遍历jQuery实例对象中所有的标签,如果当前标签中存在该指定的class,那么就删除,如果不存在,则不作处理。

① $("selector")removeClass("class1");
② $("selector")removeClass("class1 class2");
③ $("selector")removeClass("class1").removeClass("class2");

toggleClass:切换所有选中标签的Class。

如果当前标签中存在指定的Class,那么就删除,如果不存在,那么就添加。

① $("selector")toggleClass("class1");
② $("selector")toggleClass("class1 class2");
③ $("selector")toggleClass("class1").toggleClass("class2");

  代码示例

 1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <title>Title</title>
6 <script src="JS/jquery-3.2.1.js"></script>
7 <style>
8 .class1{
9 width: 400px;
10 height: 50px;
11 background: red;
12 }
13 .class2{
14 width: 600px;
15 background: green;
16 border: 1px solid #000000;
17 }
18 </style>
19 </head>
20 <body>
21 <script>
22 $(function () {
23 //....
24 //jQuery对Class的操作:
25 //添加class addClass
26 //删除class removeClass
27 //检查class hasClass
28 //切换class toggleClass
29 //01 添加class
30 $("button").eq(0).click(function () {
31 //console.log("点击");
32 //获取指定的标签,并且设置class
33 //添加class:
34 //(1) jQ对象.addClass("类")
35 //(2) jQ对象.addClass("类1")..addClass("类2")
36 //(3) jQ对象.addClass("类1 类2")
37 //$("div").addClass("class1")
38 //$("div").addClass("class1").addClass("class2")
39 $("div").addClass("class1 class2")
40 })
41 //02 检查class
42 $("button").eq(1).click(function () {
43 //console.log("点击");
44 //获取指定的标签,并且设置class
45 //检查class:检查div标签中是否存在class1,如果存在那么就返回true,否则返回false
46 console.log($("div").hasClass("class1"));
47 console.log($("p").hasClass("demo1"));
48 })
49 //03 删除class
50 $("button").eq(2).click(function () {
51 //console.log("点击");
52 //获取指定的标签,并且设置class
53 //删除class:
54 //(1) jQ对象.removeClass("类")
55 //(2) jQ对象.removeClass("类1")..removeClass("类2")
56 //(3) jQ对象.removeClass("类1 类2")
57 //$("div").removeClass("class2")
58 //$("div").removeClass("class1").removeClass("class2")
59 $("div").removeClass("class1 class2")
60 })
61 //04 切换class
62 $("button").eq(3).click(function () {
63 //console.log("点击");
64 //获取指定的标签,并且设置class
65 //切换class:如果指定的class存在那么就删除,否则就添加
66 //(1) jQ对象.toggleClass("类")
67 //(2) jQ对象.toggleClass("类1 类2")
68 //$("div").toggleClass("class2")
69 $("div").toggleClass("class1 class2")
70 })
71 })
72 </script>
73 <div>我是div</div>
74 <p class="demo1"></p>
75 <p class="demo2"></p>
76 <button>添加</button>
77 <button>检查</button>
78 <button>删除</button>
79 <button>切换</button>
80 </body>
81 </html>

3.3 jQuery框架操作位置的方法介绍

① width和height方法

  $("selector").width()和$("selector").height()方法的使用:如果不传递参数则表示获取指定标签的宽度|高度,如果传递参数则表示要设置标签的宽度|高度。

② offset和position方法

  offset表示获取当前标签距离浏览器窗口的位置,而position获取当前标签距离父标签的位置

代码示例

 1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <title>Title</title>
6 <script src="JS/jquery-3.2.1.js"></script>
7 <style>
8 .class1{
9 width: 200px;
10 height: 200px;
11 background: rebeccapurple;
12 position: relative;
13 }
14 .class2{
15 width: 50px;
16 height: 50px;
17 background: #2aa198;
18 left: 10px;
19 top:20px;
20 position: absolute;
21 }
22 </style>
23 </head>
24 <body>
25 <script>
26 $(function () {
27 //....
28 //01 width和height:
29 //console.log($(".class2").get(0));
30 //获取宽度和高度:不传递参数
31 console.log($(".class2").width());
32 console.log($(".class2").height());
33 //设置宽度和高度:传递参数
34 $(".class2").width(100);
35 $(".class2").height(100);
36 console.log($(".class2").width());
37 console.log($(".class2").height());
38 //02 位置:获取当前标签距离窗口的位置 offset
39 console.log($(".class2").offset().left);
40 console.log($(".class2").offset().top);
41 //03 位置:获取当前标签距离父标签的位置 position
42 console.log($(".class2").position().left);
43 console.log($(".class2").position().top);
44 })
45 </script>
46 <div class="class1">
47 <div class="class2"></div>
48 </div>
49 </body>
50 </html>

jQuery框架操作CSS的更多相关文章

  1. jQuery系列 第三章 jQuery框架操作CSS

    第三章 jQuery框架操作CSS 3.1 jQuery框架的CSS方法 jQuery框架提供了css方法,我们通过调用该方法传递对应的参数,可以方便的来批量设置标签的CSS样式. 使用JavaScr ...

  2. JQuery中操作Css样式的方法

    JQuery中操作Css样式的方法//1.获取和设置样式 $("#tow").attr("class")获取ID为tow的class属性 $("#tw ...

  3. 【转发】JQuery中操作Css样式的方法

    JQuery中操作Css样式的方法 //1.获取和设置样式 $("#tow").attr("class")获取ID为tow的class属性 $("#t ...

  4. jQuery修改操作css属性实现方法

    在jquery中我们要动态的修改css属性我们只要使用css()方法就可以实现了,下面我来给各位同学详细介绍介绍. css()方法在使用上具有多样性,我们先来了解css()方法基本知识. css() ...

  5. jquery轻松操作CSS样式

    $(this).click(function(){  if($(this).hasClass(“zxx_fri_on”)){    $(this).removeClass(“zxx_fri_on”); ...

  6. JQuery中操作Css样式

    //1.获取和设置样式 $("#tow").attr("class")获取ID为tow的class属性 $("#two").attr(&qu ...

  7. jQuery其他操作与bootstrap框架

    目录 标签操作 样式操作 位置操作 文本值操作 属性操作 文档处理 事件操作 常见事件 克隆案例 悬浮事件hover() 监听input输入值事件 阻止后续事件 事件委托 动画效果 bootstrap ...

  8. jQuery框架-2.jQuery操作DOM节点与jQuery.ajax方法

    一.jQuery操作DOM 内部插入操作: append(content|fn):向每个匹配的元素内部追加内容. prepend(content):向每个匹配的元素内部前置内容. 外部插入操作: af ...

  9. jQuery 操作 CSS

    jQuery 拥有若干进行 CSS 操作的方法.我们将学习下面这些: addClass() - 向被选元素添加一个或多个类 removeClass() - 从被选元素删除一个或多个类 toggleCl ...

随机推荐

  1. 补习系列(21)-SpringBoot初始化之7招式

    目录 背景 1. @PostConstruct 注解 2. InitializingBean 接口 3. @Bean initMethod方法 4. 构造器注入 5. ApplicationListe ...

  2. maven_nexus私服搭建

    搭建很简单,但是新版本运行方式有所区别,于此记录一下: 1.下载程序包:http://www.sonatype.org/nexus/downloads/ 官网比较慢,下了一小时.期间在csdn花了一积 ...

  3. Python初探-基础篇

    python和其他语言其实是相似的,如果你会了另一门语言,那学习这个语言,会很快上手 1.mac下自带的有python,版本为2.7.0(可以用home brew python3 安装最新版本的pyt ...

  4. BZOJ 3295:[Cqoi2011]动态逆序对(三维偏序 CDQ分治+树状数组)

    http://www.lydsy.com/JudgeOnline/problem.php?id=3295 题意:简单明了. 思路:终于好像有点明白CDQ分治处理三维偏序了.把删除操作看作是插入操作,那 ...

  5. DRF 视图

    目录 一.DRF中的Request 二.前戏: 关于面向对象的继承 三.初级版本 1. settings.py文件 -- 注册app 2. models.py文件 -- 创建表 3. admin.py ...

  6. 在?MySQL事务隔离级别了解一下?

    事务的四大ACID 属性:Atomicity 原子性.Consistency 一致性.Isolation 隔离性.Durability 持久性. 原子性: 事务是最小的执行单位不可分割,强调事务的不可 ...

  7. Linux命令学习-ls命令

    Linux中,ls命令的全称是list,主要作用是列出当前目录下的清单. 列出Linux根目录下的所有目录 ls / 列出当前目录下所有文件夹和文件 ls 列出当前目录下所有文件夹和文件(包括以&qu ...

  8. c++学习书籍推荐《C++沉思录》下载

    百度云及其他网盘下载地址:点我 编辑推荐 经典C++图书,应广大读者的强烈要求再版 目录 第0章 序幕第一篇 动机第1章 为什么我用C++第2章 为什么用C++工作第3章 生活在现实世界中 第二篇 类 ...

  9. 5. xadmin 后台搭建

    要维护他人产权,就不喽了,直接飞机 Django1.11.11使用xadmin的方法(一: 快速安装篇):https://www.jianshu.com/p/bcb74595213e Django1. ...

  10. MYSQL千万级别数据量迁移Elasticsearch5.6.1实战

    从关系型库中迁移数据算是比较常见的场景,这里借助两个工具来完成本次的数据迁移,考虑到数据量并不大(不足两千万),未采用snapshot快照的形式进行. Elasticsearch-jdbc,Githu ...