当前位置: 首页 > news >正文

JQuery系列之样式操作

文章の目录

  • 1、操作 css 方法
    • 1.1、css(name|pro|[,val|fn])
      • 1.1.1、概述
      • 1.1.2、语法
        • 1.1.2.1、语法1
          • 1.1.2.1.1、参数
        • 1.1.2.2、语法2
          • 1.1.2.2.1、参数
        • 1.1.2.3、语法3
          • 1.1.2.3.1、参数
        • 1.1.2.4、语法4
          • 1.1.2.4.1、参数
      • 1.1.3、示例
  • 2、设置类样式方法
    • 2.1、addClass(class|fn)
      • 2.1.1、概述
      • 2.1.2、语法
        • 2.1.2.1、参数
      • 2.1.3、示例
    • 2.2、removeClass([class|fn])
      • 2.2.1、概述
      • 2.2.2、语法
        • 2.2.2.1、参数
      • 2.2.3、示例
    • 2.3、toggleClass(class|fn[,sw])
      • 2.3.1、概述
      • 2.3.2、语法1
        • 2.3.2.1、参数
      • 2.3.3、语法2
        • 2.3.3.1、参数
      • 2.3.4、语法3
        • 2.3.4.1、参数
      • 2.3.5、语法4
        • 2.3.5.1、参数
      • 2.3.6、示例
  • 写在最后


1、操作 css 方法

1.1、css(name|pro|[,val|fn])

1.1.1、概述

访问匹配元素的样式属性。

jQuery 1.8中,当你使用CSS属性在css()或animate()中,我们将根据浏览器自动加上前缀(在适当的时候),比如("user-select", "none"); 在Chrome/Safari浏览器中我们将设置为"-webkit-user-select",Firefox会使用"-moz-user-select",IE10将使用"-ms-user-select"

1.1.2、语法

1.1.2.1、语法1

selector.css(name);
1.1.2.1.1、参数

name 既可以是字符串也可以是数组;

  • name:String 要访问的属性名称;
  • name:Array 一个或多个CSS属性组成的一个数组;

1.1.2.2、语法2

selector.css(properties);
1.1.2.2.1、参数
  • properties:Map 要设置为样式属性的名/值对。

1.1.2.3、语法3

selector.css(name, value);
1.1.2.3.1、参数
  • name,value:String,Number 属性名,属性值

1.1.2.4、语法4

selector.css(name, fn);
1.1.2.4.1、参数
  • name:String 属性名
  • fn:Function 此函数返回要设置的属性值。接受两个参数,index为元素在对象集合中的索引位置,value是原先的属性值。

1.1.3、示例

取得第一个段落的color样式属性的值。

$("p").css("color");

将所有段落的字体颜色设为红色并且背景为蓝色。

$("p").css({ color: "#ff0011", background: "blue" });

将所有段落字体设为红色

$("p").css("color", "red");

逐渐增加div的大小

$("div").click(function () {
	$(this).css({
		width: function (index, value) {
			return parseFloat(value) * 1.2;
		},
		height: function (index, value) {
			return parseFloat(value) * 1.2;
		}
	});
});

2、设置类样式方法

2.1、addClass(class|fn)

2.1.1、概述

为每个匹配的元素添加指定的类名。

2.1.2、语法

selector.addClass(class|fn)

2.1.2.1、参数

  • class:String 一个或多个要添加到元素中的CSS类名, 用空格分开
  • function(index, class) Function 此函数必须返回一个或多个空格分隔的class名。接受两个参数,index参数为对象在这个集合中的索引值,class参数为这个对象原先的class属性值。

2.1.3、示例

为匹配的元素加上 ‘selected’ 类

$("p").addClass("selected");
$("p").addClass("selected1 selected2");

给li加上不同的class

<ul>
	<li>Hello</li>
	<li>Hello</li>
	<li>Hello</li>
</ul>
$("ul li:last").addClass(function () {
	return "item-" + $(this).index();
});

2.2、removeClass([class|fn])

2.2.1、概述

从所有匹配的元素中删除全部或者指定的类。

2.2.2、语法

selector.removeClass([class|fn])

2.2.2.1、参数

  • class:String 一个或多个要删除的CSS类名, 用空格分开
  • function(index, class) Function 此函数必须返回一个或多个空格分隔的class名。接受两个参数,index参数为对象在这个集合中的索引值,class参数为这个对象原先的class属性值。

2.2.3、示例

从匹配的元素中删除 ‘selected’ 类

$("p").removeClass("selected");

删除匹配元素的所有类

$("p").removeClass();

删除最后一个元素上与前面重复的class

$("li:last").removeClass(function () {
		return $(this).prev().attr("class");
	});

2.3、toggleClass(class|fn[,sw])

2.3.1、概述

如果存在(不存在)就删除(添加)一个类。

2.3.2、语法1

selector.toggleClass(class);

2.3.2.1、参数

  • class:String CSS类名;

2.3.3、语法2

selector.toggleClass(class, sw);

2.3.3.1、参数

  • class: String 要切换的CSS类名.
  • sw:Boolean 用于决定元素是否包含class的布尔值。

2.3.4、语法3

selector.toggleClass(sw);

2.3.4.1、参数

  • sw:Boolean 用于决定元素是否包含class的布尔值。

2.3.5、语法4

selector.toggleClass(fn, sw);

2.3.5.1、参数

  • fn:Function 用来返回在匹配的元素集合中的每个元素上用来切换的样式类名的一个函数。接收元素的索引位置和元素旧的样式类作为参数。
  • sw:Boolean 一个用来判断样式类添加还是移除的 boolean 值。

2.3.6、示例

为匹配的元素切换 ‘selected’ 类

$("p").toggleClass("selected");

每点击三下加上一次 ‘highlight’ 类

<strong>jQuery 代码:</strong>
var count = 0;
$("p").click(function () {
	$(this).toggleClass("highlight", count++ % 3 == 0);
});

根据父元素来设置class属性

$("div.foo").toggleClass(function () {
	if ($(this).parent().is(".bar")) {
		return "happy";
	} else {
		return "sad";
	}
});

写在最后

如果你感觉文章不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???
如果你觉得该文章有一点点用处,可以给作者点个赞;\\*^o^*//
如果你想要和作者一起进步,可以微信扫描二维码,关注前端老L~~~///(^v^)\\\~~~
谢谢各位读者们啦(^_^)∠※!!!

相关文章:

  • 游戏开发中的按键操作管理2
  • 构建自己的无人驾驶系统
  • js中的同步任务、异步任务、宏任务、微任务
  • 给大家推荐一套 git 工作流
  • JWT解密和python反序列化之[CISCN2019 华北赛区 Day1 Web2]ikun
  • 《用Go语言自制解释器》之第3章 求值
  • C++ - 8月31日 - 约瑟夫环问题
  • C++ 模板泛型编程
  • Retrofit原理解析(二)
  • 数据结构与算法 -- 子序列问题
  • python中namedtuple函数用法详解
  • C++设计模式---模板方法模式
  • 数据结构和算法——绪论
  • 最小生成树算法的相关变形题
  • Android中常用的几种容器视图的使用
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • C# 免费离线人脸识别 2.0 Demo
  • ES6简单总结(搭配简单的讲解和小案例)
  • ES学习笔记(12)--Symbol
  • Invalidate和postInvalidate的区别
  • Java比较器对数组,集合排序
  • orm2 中文文档 3.1 模型属性
  • Ruby 2.x 源代码分析:扩展 概述
  • Spring Cloud Feign的两种使用姿势
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • vue数据传递--我有特殊的实现技巧
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 前嗅ForeSpider教程:创建模板
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 如何使用 JavaScript 解析 URL
  • 微信小程序开发问题汇总
  • 无服务器化是企业 IT 架构的未来吗?
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • elasticsearch-head插件安装
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • ​Linux·i2c驱动架构​
  • # Swust 12th acm 邀请赛# [ A ] A+B problem [题解]
  • # 计算机视觉入门
  • ###C语言程序设计-----C语言学习(3)#
  • #162 (Div. 2)
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (aiohttp-asyncio-FFmpeg-Docker-SRS)实现异步摄像头转码服务器
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (笔试题)合法字符串
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • .gitignore文件设置了忽略但不生效
  • .Net core 6.0 升8.0
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • .py文件应该怎样打开?
  • /3GB和/USERVA开关
  • @RequestBody与@ResponseBody的使用