原生js 实现addclass和removeclass
来源:互联网 发布:本雅明 译本 知乎 编辑:程序博客网 时间:2024/06/05 18:50
function getElementsByClassName(className,root,tagName) { //root:父节点,tagName:该节点的标签名。 这两个参数均可有可无 if(root){ root=typeof root=="string" ? document.getElementById(root) : root; }else{ root=document.body; } tagName=tagName||"*"; if (document.getElementsByClassName) { //如果浏览器支持getElementsByClassName,就直接的用 return root.getElementsByClassName(className); }else { var tag= root.getElementsByTagName(tagName); //获取指定元素 var tagAll = []; //用于存储符合条件的元素 for (var i = 0; i < tag.length; i++) { //遍历获得的元素 for(var j=0,n=tag[i].className.split(' ');j<n.length;j++){ //遍历此元素中所有class的值,如果包含指定的类名,就赋值给tagnameAll if(n[j]==className){ tagAll.push(tag[i]); break; } } } return tagAll; }}function hasClass( elements,cName ){ return !!elements.className.match( new RegExp( "(\\s|^)" + cName + "(\\s|$)") ); // ( \\s|^ ) 判断前面是否有空格 (\\s | $ )判断后面是否有空格 两个感叹号为转换为布尔值 以方便做判断};function addClass( elements,cName ){ if( !hasClass( elements,cName ) ){ elements.className += " " + cName; };};function removeClass( elements,cName ){ if( hasClass( elements,cName ) ){ elements.className = elements.className.replace( new RegExp( "(\\s|^)" + cName + "(\\s|$)" )," " ); // replace方法是替换 };};
0 0
- 原生js 实现addclass和removeclass
- JS原生addClass、removeClass实现
- 原生JS实现addClass,removeClass,toggleClass
- 原生JS实现addClass,removeClass,toggleClass
- 原生js实现addClass、removeClass、toggleClass
- 原生JS实现addClass,removeClass,toggleClass
- 原生js实现addClass,removeClass,hasClass方法
- 原生javascript实现addClass和removeClass
- 原生JS addClass removeClass hasClass
- js实现addClass,removeClass
- js实现css、addClass、removeClass和toggleClass
- js实现css、addClass、removeClass和toggleClass
- 用原生js实现addClass,removeClass,hasClass方法
- 仿jQuery原生js实现----hasClass,removeClass,addClass
- js原生扩展addClass,removeClass,hasClass
- 原生js封装addClass removeClass hasClass
- 原生JavaScript addClass() removeClass()
- 使用原生JS实现jQuery的addClass, removeClass, hasClass函数功能
- opencv捕捉cv::exception
- javascript调用父窗口(父页面)的方法
- 05.2#字符串处理函数
- iOS ViewController跳转界面的几种方法简单总结
- 华为OJ 字符串加解密
- 原生js 实现addclass和removeclass
- Git查看、删除、重命名远程分支和tag
- 数据库抽象层Database Abstraction Layer for PHP
- Linux下gdb中c++调试
- Objective-C #pragma mark 详解
- Xampp Apache服务无法启动的解决方法
- RK平台ubuntu安装vbox
- js里父页面与子页面的相互调用
- Docker-github安装记录