javascript - 检查元素是否具有 CSS 类。如果没有添加的话

标签 javascript jquery

如何将下面的 jQuery 行转换为 Javascript。我想检查这个元素是否有一个类。如果它没有 CSS 类,我想将其添加到元素中。这些行在下面用星号表示。

Jquery

    var slides = document.querySelectorAll('#slides .slide');
    var currentSlide = 0;


  function goToSlide(n){

  //Remove showing from the current slide
    var thisSlide = slides[currentSlide];

    thisSlide.classList.remove("showing");

  //get position of next slide.
    currentSlide = (n+slides.length)%slides.length;

  //Add current to next slide
    var nextSlide = slides[currentSlide];

 //Check if nextSlide has showing class. If not, add it.
  **
   if (!($(nextSlide).hasClass('showing'))) {
           $(nextSlide).addClass('showing'); 
    }
  **

    }

最佳答案

您可以使用classList及其containsadd方法。

if(!nextSlide.classList.contains(classname)){
      nextSlide.classList.add(classname);
}

function addclass(){
  if(!document.getElementById('div1').classList.contains("new")){
      document.getElementById("div1").classList.add("new");
  }
  else{
      console.log("Already exist");
  }
}
.bg-r{
  width:50px;
  height:50px;
  border:1px solid #000;
}
.new{
  background-color:#f00;
}
<div id="div1" class="bg-r"></div>
<button onclick="addclass();">Add</button>

关于javascript - 检查元素是否具有 CSS 类。如果没有添加的话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43121144/

相关文章:

javascript - 通过 javascript 使用 Enter 键添加新行

javascript - Jquery css z-index Math.random() 不工作

javascript - 为什么我需要 jquery.min.js 而不是只需要 jquery.js 才能让脚本工作?

JavaScript:带有下拉菜单的动态导航栏会扰乱下拉元素的宽度

jquery - 哪一个使用绝对路径或相对路径?

javascript - jVectorMap 标记选中状态

javascript - Eloquent JavaScript - 机器人项目开始时遇到问题

javascript - 从 Javascript 中的复杂字符串中删除一些空格

javascript - 将多个 id 从复选框传递到 Laravel 中的 Controller

javascript - id动态时如何调用ajax