jQuery toggleClass example

Toggle class name on click in jQuery

by tibum

HTML

<div id="banner-message">
  <p>Hello World</p>
  <button>Change color</button>
</div>


<select data-id="123456">
  <option value="">filter</option>
  <option data-behavior="toggle-visibility" data-scope="a" value="a">a</option>
  <option data-behavior="toggle-visibility" data-scope="b" value="b">b</option>
</select>


<select data-id="98765">
  <option value="">filter</option>
  <option data-behavior="toggle-visibility2" data-scope="c" value="a">a</option>
  <option data-behavior="toggle-visibility2" data-scope="d" value="b">b</option>
</select>

CSS

body {
  background: #20262E;
  padding: 20px;
  font-family: Helvetica;
}

#banner-message {
  background: #fff;
  border-radius: 4px;
  padding: 20px;
  font-size: 25px;
  text-align: center;
  transition: all 0.2s;
  margin: 0 auto;
  width: 300px;
}

button {
  background: #0084ff;
  border: none;
  border-radius: 5px;
  padding: 8px 14px;
  font-size: 15px;
  color: #fff;
}

#banner-message.alt {
  background: #0084ff;
  color: #fff;
  margin-top: 40px;
  width: 200px;
}

#banner-message.alt button {
  background: #fff;
  color: #000;
}

JavaScript

// find elements
var banner = $("#banner-message")
var button = $("button")

// handle click and add class
button.on("click", () => {
  banner.toggleClass("alt")
   console.log("Marc")
})

$("select").on("change", function(e) {
  var sel = $(this).find(":selected");
  var attr = sel.attr("data-behavior");
  var attr2 = $(this).attr("data-id");
  console.log(attr + ".....|" + attr2 +"|....." + $(this).val())
});