Изменить класс при нажатии на объект
var classes = [
"myClass1",
"myClass2"
];
var i = 0;
function classChange(e) {
e.setAttribute("class", classes[i]);
i = i == 0 ? i = 1 : i = 0;
}
Если вы хотите, чтобы оно изменилось при mousedown и наведении мыши, используйте:
function mouseDown(e) {
e.classList.remove("mouseup");
e.classList.remove("mousedown");
if (e.hasAttribute("class")) {
e.setAttribute("class", e.getAttribute("class") + " mousedown");
} else {
e.setAttribute("class", "mousedown");
}
}
function mouseUp(e) {
e.classList.remove("mouseup");
e.classList.remove("mousedown");
if (e.hasAttribute("class")) {
e.setAttribute("class", e.getAttribute("class") + " mouseup");
} else {
e.setAttribute("class", "mousedown");
}
}
//you change selector if you want another class name
var selector = document.getElementsByClassName("onmousechange");
for (var i = 0; i <= selector.length; i++) {
selector[i].setAttribute("onmouseup", "mouseUp(this)");
selector[i].setAttribute("onmousedown", "mouseDown(this)");
}
HTML И CSS также одинаковы для обоих кодов JavaScrirpt
Чистый CSS3
.mousedown,
.myClass1 {
background: #0a0;
}
.mouseup,
.myClass2 {
background: #a00;
}
Чистый HTML5
//onclick="classChange(this)"
//class="onmousechange"
<div>
<p>paragraph</p>
</div>
Мне лень писать какую-либо информацию.