js 中class选择器,addClass,removeClass,hasClass,toggleClass,getByClass
2015-08-22 14:44
651 查看
<!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 = 0; 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>
相关文章推荐
- JS返回上一页并刷新页面,亲测有效
- JavaScript中Get/Set访问器
- JS 传播事件、取消事件默认行为、阻止事件传播
- js 小说格式整理
- js 敏感词过滤
- UVA 10537 - The Toll! Revisited(dijstra扩张)
- json 转换,手机获取验证码
- bzoj 2208: [Jsoi2010]连通数
- API获得ip,JS获得IP地理信息
- json 解析
- Sublime Text 2 JS 格式化插件 JsFormat的配置使用
- js表达式和语句
- JavaScript Array
- JSTL标签(可以直接在jsp页面格式化)
- 通过js传值
- HTML5&CSS3&JavaScript&PHP&MySQL学习笔记
- fastJson 解决 把对象转化成json避免$ref
- js模拟滚动条
- js 不同页面间传递值并取值
- js日历