1、hasClass

 function hasClass(elem, cls){
     cls = cls || '';
     if(cls.replace(/\s/g, '').length == 0) return false;
     return new RegExp(' ' + cls + ' ').test(' ' + elem.className + ' ');
 }

2、addClass

 function addClass(elem, cls){
     if(!hasClass(elem, cls)){
         elem.className += ' ' + cls;
     }
 }

3、removeClass

 function removeClass(elem, cls){
     if(hasClass(elem, cls)){
         var newClass = ' ' + elem.className.replace(/[\t\r\n]/g, '') + ' ';
         while(newClass.indexOf(' ' + cls + ' ') >= 0){
             newClass = newClass.replace(' ' + cls + ' ', ' ');
         }
         elem.className = newClass.replace(/^\s+|\s+$/g, '');
     }
 }

//call the functions
addClass(document.getElementById("test"), "test");
removeClass(document.getElementById("test"), "test")
if(hasClass(document.getElementById("test"), "test")){//do something};

  

转载于:https://www.cnblogs.com/wsir/p/5553720.html

原生JS实现hasClass,addClass,removeClass相关推荐

  1. js 实现 hasClass(), addClass(), removeClass() 方法

    js 实现 hasClass(), addClass(), removeClass() 方法 HTML5-classList classList 方法有 contains('className') / ...

  2. 常用的js自定义方法 -- hasClass addClass removeClass getElementsByClass

    function hasClass(ele,cls) { var result = ele && ele.className && (ele.className.sea ...

  3. hasClass addClass removeClass

    //函数有class function hasClass(ele,cls){ return -1<(" "+ele.className+" ").inde ...

  4. 原生js 样式的操作整理

    内联样式的获取 function getStyle(obj,attr){//简单的获取内联样式return obj.currentStyle?obj.currentStyle[attr]:obj.ge ...

  5. 原生js实现addClass,removeClass,hasClass方法

    第一部分:原生js实现addClass,removeClass,hasClass方法 function hasClass(elem, cls) {cls = cls || '';if (cls.rep ...

  6. 原生JS实现addClass,removeClass,toggleClass

    jQuery操作class的方式非常强大,但是目前还有一些人不知道如何使用或者由于项目统一性的原因无法使用jquery. 在此写了一个利用原生js来实现对dom元素class的操作方法 1.addCl ...

  7. 怎么用js实现jq的removeClass方法

    1.addClass:为指定的dom元素添加样式. 2.removeClass:删除指定dom元素的样式. 3.toggleClass:如果存在(不存在),就删除(添加)一个样式. 4.hasClas ...

  8. 原生js来实现对dom元素class的操作方法

    jQuery操作class的方式非常强大 写了一个利用原生js来实现对dom元素class的操作方法 1.addClass:为指定的dom元素添加样式 2.removeClass:删除指定dom元素的 ...

  9. 原生JS实现的DOM操作笔记(草稿整理)

    原生JS实现的DOM一系列操作参考: 原生JavaScript封装DOM库 siblings: 原生JS-查找相邻的元素-siblings方法的实现 addClass,removeClass,hasC ...

最新文章

  1. BZOJ 1568 李超线段树
  2. 从 C++ 到 Objective-C 的快速指南 【已翻译100%】
  3. 如何使用repo sync
  4. python搭配什么数据库_python 连接操作数据库(一)
  5. 技能系统设计笔记 3
  6. 09-OSPF故障排查总结
  7. 聚焦openEuler Summit,解锁云原生、开源等领域的实践干货
  8. 华为的第一辆车来了,38.89万元起!王兴评论亮了
  9. Linux命令解释之head
  10. c语言修改内存字节,要开学了,小白给大家一个C语言修改dnf内存的示范代码
  11. matlab导入txt数据画图
  12. CSS 背景位置 background-position属性
  13. 安装驱动时提示文件的哈希值不在指定的目录文件中
  14. 终端服务器超出了最大允许连接数解决办法
  15. 点线面的意义_点线面在绘画中的意义
  16. 第四单元:丰富的网页媒体
  17. 有源与无源晶振的区别
  18. python最佳编程语言_前十大编程语言你会几种?
  19. 7-8 金银铜牌 (15 分)
  20. 记一次 K8s 控制平面排障的血泪经历!

热门文章

  1. SQL之case when then用法简介
  2. 笔记本电脑同时使用外网和内网
  3. Jeecg-多表联合查询
  4. Mozilla浏览器和应用程序的整合---第一步,显示
  5. element tree的开发使用
  6. java抓取并保存图片_利用JAVA抓取网站的所有图片并保存于本地
  7. 摆摊也要抽时间学的MySQL主从复制
  8. Java中的二进制,八进制,十六进制
  9. fate - 收藏集 - 掘金
  10. wpf fontweight system.argumentoutofrangeexception