Подтвердить что ты не робот

Изменение стиля Javascript

Я хочу, чтобы изменения стиля part 1 onclick div и part 2 снова по щелчку, он возвращается в нормальное состояние. Я попытался сделать это, но мне не удалось достичь результатов part 2.

Ниже приведен код Javascript

function abc() {
    document.getElementById("test").style.color="red";
}

После повторного нажатия на тестовый div цвет должен вернуться к цвету defaulr, т.е. к черному...

4b9b3361

Ответ 1

function abc() {
    var color = document.getElementById("test").style.color;
    if (color === "red")
         document.getElementById("test").style.color="black";
    else
         document.getElementById("test").style.color="red";
}

Ответ 2

Использование jQuery:

$(document).ready(function(){
    $('div').click(function(){
        $(this).toggleClass('clicked');
    });
});​

Живой пример

Ответ 3

Есть ли какая-то логика для проверки цвета или наличия определенного флага,

function abc() {
    var currentColor = document.getElementById("test").style.color;

    if(currentColor == 'red'){
    document.getElementById("test").style.color="black";
    }else{
   document.getElementById("test").style.color="red";

    }
}

Ответ 4

вы можете проверить цвет, прежде чем нажимать, чтобы изменить его.

function abc(){
     var color = document.getElementById("test").style.color;
     if(color==''){
         //change
     }else{
         //change back
     }
}

Ответ 5

Простой оператор switch должен делать трюк:

function abc() {
    var elem=document.getElementById('test'),color;
    switch(elem.style.color) {
        case('red'):
            color='black';
            break;
        case('black'):
        default:
            color='red';
    }
    elem.style.color=color;
}

Ответ 6

function abc() {
    var color = document.getElementById("test").style.color;
    color = (color=="red") ? "black" : "red" ;
    document.getElementById("test").style.color= color;
}

Ответ 7

Лучше изменить класс элемента (.ррегулярно черный,.alert красный):

function abc(){
  var myDiv = document.getElementById("test");
  if (myDiv.className == 'alert') {
    myDiv.className = 'regular';
  } else {
    myDiv.className = 'alert';
  }
}