jquery—addClass方法和removeClass方法
addClass ( ) : 给选中的元素添加class类名;
可以传class类名,也可以传function函数。
removeClass ( ) : 把选中的元素的class类名删除;
可以传class类名,也可以传function函数。
下边我们通过一个小例子来理解下这两个方法:
需求是——有四个div,起始背景颜色都是黄色,被点击的div元素背景变绿;
效果是
方法一:把样式写在css中,我们预先把第一个div元素的背景颜色设置为绿颜色,当点击div的时候,先删除所有div中带有active的class类名,然后当前被点击的div添加上active类名,从而实现了被点击的div背景变绿,其他div颜色为黄色。
<style>.box{width:100px;height:100px;background-color:yellow;margin-bottom:5px;display: inline-block;color:#fff;}.box.active{background-color:green;}
</style>
<body><div class="box active">1</div><div class="box">2</div><div class="box">3</div><div class="box">4</div>
<script>// 方法一:$(".box").click(function(e){$(".box").removeClass("active");$(this).addClass("active");})
</script>
方法二:全部利用js来实现,思路也很简单,点击div时,先把所有div背景颜色设置为初始的黄色,然后被点击的div颜色背景颜色变为绿色。(但是此方法不推荐,首先从复用性来说,当一个页面有个多相似功能的时候,我们给元素添加一个类名即可,复用性高,从缓存机制来讲,当我们访问一个网页的时候,会从服务器拿到html css js 图片··· 等资源,浏览器会把css文件缓存到本地的,js则不会被缓存!)
// 方法二:
$(".box").click(function(e){$(".box").css({background:"yellow"})$(this).css({background:"green"})
})
方法三:跟方法一差不多,只不过更简化了一些:
思路是被点击的div添加类名active,其它的div移除active ; silings()方法是选择与除自己之外所有同级的元素,后边小编会详解此方法。
// 方法三:
$(".box").click(function(e){$(this).addClass("active").siblings().removeClass("active");
})
hasClass:被选中的元素中是否有hasClass中的类名,有返回true,无返回false,返回的是布尔值;
<div class="box active">1</div><div class="box">2</div><script>console.log( $(".box").hasClass("active") ) //trueconsole.log( $(".box").hasClass("test") ) //false</script>
jquery—addClass方法和removeClass方法相关推荐
- jquery on()方法和bind()方法的区别
bind是直接绑定在一个对象上. $('.btn').bind('click', function() {alert('User clicked'); }); 参数 描述 event 必需.规定添加到 ...
- jquery中prop()方法和attr()方法
接着上一篇笔记的疑惑,找了下prop()方法和attr()方法的区别.原来query1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值. 大 ...
- paly()方法和pause()方法
paly()方法和pause()方法 是HTML5里新增的 audio和video里的方法 使用的是jquery选择器所以返回的是jquery对象而非dom对象,而jquery对象是没有play() ...
- show()方法和hide()方法
1.show()方法和hide()方法是jquery中最基本的动画方法.为一个元素调用hide()方法,会将该元素样式改为none $("element").hide()与$(&q ...
- JS中的call()方法和apply()方法用法总结
1. 每个函数都包含两个非继承而来的方法:call()方法和apply()方法. 2. 相同点:这两个方法的作用是一样的. 都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖 ...
- python 推迟运行_一文看懂Python的time模块sleep()方法和strftime()方法
概述 今天主要介绍一下Python的time sleep()方法和strftime()方法. 一.Python time sleep()方法 Python time sleep() 函数推迟调用线程的 ...
- JS服务器端开发基础篇(Array.slice方法和splice方法)
Array.slice方法和splice方法在众多的JS数组中属于比较复杂的一个方法,而且容易记混.搜索网络上很多资料都没有发现系统的总结.特别归纳如下,不完全处还希望各位批评指正. 一.slice ...
- Loader的load方法和loadBytes方法LoaderContext参数
(1)在看代码的时候还发现一个以前没有这么注意的问题,也mark一下. 关于Loader的load方法和loadBytes方法LoaderContext参数的问题.. 要加载某个SWF到自己的安全域内 ...
- ThinkPHP 中M方法和D方法的具体区别
M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...
- asp.net TemplateField模板中的Bind方法和Eval方法
TemplateField模板中为了能够有限制的或者取出数据库中某列的值时,可以用Bind和Eval方法来实现.以下是Bind方法的格式,Eval的格式也是和Bind一样的. Bind("列 ...
最新文章
- 第三次AI寒冬即将来袭?
- 数据库分片教程mysql_简述MySQL分片中快速数据迁移
- JavaScript入门(part6)--运算符
- nextfloat_Java Random nextFloat()方法与示例
- 新能源汽车简史——电动汽车沉浮录
- NLP之路-warm up
- 【Leetcode】143. Reorder List
- 支付宝退款接口及反回参数
- 知识图谱基础代码构建(医疗向)
- html5黄油,天才黄油有油无油区别 天才黄油的正确用法
- 光纤接头截面工艺分类
- hehehehehe
- 采集页面之后css布局混乱之rem适配布局
- html中的圆周率如何调用,谁算出来的圆周率
- BAT的数据红利,催生AI时代的敏捷计算力
- 哈夫曼树实现文件的压缩与解压缩
- 160cracked-4
- ASEMI代理ON/安森美FGH40N60SMD原厂渠道车规级IGBT
- 区块链社交时代 或许永远不会到来
- Columbia Biosciences 山羊抗美洲驼 IgG:SureLight APC
热门文章
- C#导出VCF格式电话本,遇到QUOTED-PRINTABLE编码的问题,附带QUOTED-PRINTABLE编码解码
- Relion在K1 Power Linux实践
- crond和crontab详解
- 大数据高级开发工程师——大数据相关工具之一 Sqoop
- w10运行游戏计算机中丢失xinput1-3.dll,WIN10启动游戏由于找不到xinput13dll无法运行如何修复...
- 知我者,谓我心忧,不知我者,谓我何求。何必说?
- Go优雅的重启服务之endless库
- Wireshark使用指南
- 【5G核心网】5GC核心网之网元NSSF
- 吴恩达反向传播算法推导,吴恩达卷积神经网络ppt