jQuery addClass example

Change class name on click in jQuery

by Ben Watts

HTML

<div id="banner-message">
    <h1 class="title" cobalt-text="Hello"></h1>
</div>

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

var target = document.querySelector('.title');
 
// create an observer instance
var observer = new MutationObserver(function(mutations) {
    mutations.forEach(function(mutation) {
        console.log(mutation);
        mutation.target.textContent = mutation.target.getAttribute(mutation.attributeName);
    });
});
 
// configuration of the observer:
var config = { attributes: true }
 
// pass in the target node, as well as the observer options
observer.observe(target, config);

$(function()
{
	document.getElementsByClassName("title")[0].textContent = document.getElementsByClassName("title")[0].getAttribute("cobalt-text");
    setTimeout(function()
    {
        document.getElementsByClassName("title")[0].setAttribute("cobalt-text", "World");
    }, 1500);
});