js 中class选择器,addClass,removeClass,hasClass,toggleClass,getByClass
2024-08-28 18:46:59
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="智能社 - zhinengshe.com" />
<meta name="copyright" content="智能社 - zhinengshe.com" />
<title>智能社 - www.zhinengshe.com</title> <script src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.js"></script>
<script> function getByClass(oParent,sClass){ var ret = [];
// test
var re = new RegExp("\\b" + sClass + "\\b");
//var re = /\bbtn\b/;
var aEle = oParent.getElementsByTagName("*");
for(var i = ; i < aEle.length; i++){ if(re.test(aEle[i].className)){
ret.push(aEle[i]);
}
}
return ret;
} function addClass(obj,sClass){ var re = new RegExp("\\b"+sClass+"\\b"); if(!re.test(obj.className)){ if(obj.className){
obj.className += " " + sClass;
} else {
obj.className = sClass
}
}
} function removeClass(obj,sClass){ var re = new RegExp("\\b"+sClass+"\\b","g"); obj.className = obj.className.replace(re,"").replace(/^\s+|\s+$/g,"").replace(/\s+/g," "); if(!obj.className){
obj.removeAttribute("class");
} } function hasClass(obj,sClass){
var re = new RegExp("\\b"+sClass+"\\b");
return re.test(obj.className);
} function toggleClass(obj,sClass){ if(hasClass(obj,sClass)){
removeClass(obj,sClass)
} else {
addClass(obj,sClass)
}
} window.onload = function(){
var oBtn = document.getElementById("btn1"); oBtn.onclick = function(){ $(oBtn).toggleClass("active"); //toggleClass(this,"active") };
}; </script>
</head> <body> <input id="btn1" class="box add btn active active active" type="button" value="toggleClass" /> </body>
</html>
最新文章
- Element-ui,Mint-ui
- c# Newtonsoft.Json序列化和反序列 js解析
- Linux杂乱小知识点
- ASP.NET MVC应用require.js实践
- 阅读《深入理解JavaScript定时机制》
- 常用的邮箱服务器(SMTP、POP3)地址、端口
- Windows之vmware安装破解版错误汇总
- 完全卸载oracle10G/11G步骤
- List<;T>;到XML的序列化与反序列化
- Kienct与Arduino学习笔记(2) 深度图像与现实世界的深度图的坐标
- Node.js初探之GET方式传输
- Effective Java 第三版——9. 使用try-with-resources语句替代try-finally语句
- Python【第三课】 函数基础
- android:shape 设置圆形
- transform,transtion属性
- log 的 debug()、 error()、 info()方法
- ES6-字符串扩展-padStart(),padEnd()
- python之函数2
- 关于几个vcenter的合并心得!
- Min Cost Climbing Stairs - LeetCode
热门文章
- P481tabtenn0
- nRF52832的SAADC
- Codeforces 838 B - Diverging Directions
- Setting the Java Class Path
- Ubuntu自带截图工具screenshoot
- lombok插件:Data自动get/set方法, Slf4j实现Logger的调用
- spring ---->; aop的两种实现方式
- python Deep learning 学习笔记
- OnSen UI结合AngularJs打造”美团";APP";附近”页面 --Hybrid App
- Alibaba Java诊断工具Arthas之快速安装和简单使用