addClass(document.body, 'showRightPanel')
removeClass(document.body, 'showRightPanel')

/**
 * Add class to element
 * @param {HTMLElement} elm
 * @param {string} cls
 */
export function addClass(ele, cls) {
  if (!hasClass(ele, cls)) ele.className += ' ' + cls
}
/**
 * Remove class from element
 * @param {HTMLElement} elm
 * @param {string} cls
 */
export function removeClass(ele, cls) {
  if (hasClass(ele, cls)) {
    const reg = new RegExp('(\\s|^)' + cls + '(\\s|$)')
    ele.className = ele.className.replace(reg, ' ')
  }
}

 
/**
 * Check if an element has a class
 * @param {HTMLElement} elm
 * @param {string} cls
 * @returns {boolean}
 */
export function hasClass(ele, cls) {
  return !!ele.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)'))
}

最新文章

  1. sed 技巧
  2. Create and Use Custom Attributes
  3. [译]Canvas的基本用法
  4. spark MapOutputTrackerMaster
  5. 微软官方的一段JavaScript判断.net环境
  6. JQuery学习使用笔记 -- JQuery插件开发
  7. Eclipse文件覆盖问题
  8. VS2013中Python学习环境搭建
  9. 安装javajava整合Flex
  10. linux文件系统命令
  11. yii2.0下拉列表的使用
  12. IDEA教程(转载)
  13. Linux学习之CentOS(七)---常用基本操命令1
  14. [git] git怎样fork一个repo
  15. Lintcode228-Middle of Linked List-Naive
  16. ElasticSearch(一):CentOS7 安装 ElasticSearch6.4.0
  17. poj1852 Ants(思维)
  18. WebService与RESTful WebService
  19. Hadoop读写流程
  20. OpenCV——视频操作基础

热门文章

  1. 代码部署:使用 nginx 代理到云服务器 ( windows 系统)
  2. Linux常见问题解决方案
  3. Java课程设计 ssm电影售票选座管理系统 电影网站的网页设计与制作mysql
  4. 爬虫实践二--豆瓣top250电影
  5. ESP32-S2原生USB 烧录 TinyUF2 bootloader 加 CircuitPython
  6. 【笔记】特征脸(PCA在人脸识别领域的应用)
  7. 【原创】Dubbo 2.7.8多个远程代码执行漏洞
  8. IP网络地址的计算
  9. miniFTP项目实战三
  10. Django3使用WebSocket实现WebShell