2013-11-13 3 views
-1

Привет, я пытаюсь сделать что-то вроде этогоКак изменить цвет div, нажав на столбец таблицы?

Когда я нажимаю первую колонку таблицы «один», тогда мне нужно изменить свой цвет div() на красный с зеленого.

, когда я нажимаю это снова, тогда он должен вернуться к голубым. Как я могу это сделать?? я попробовал следующий код и он не работает

<html> 
<head> 
    <script> 

$(".stileone").on("click", function() { 
    $(this).css("background", "blue"); 
}); 

    </script> 
</head> 
<body> 
    <style> 

    table{ 
     width: 100%; 
     height: 50px; 
    } 
    table td{ 
     width: 40px; 
    } 
    </style> 
<table border="1"> 
<tr> 
<td > 
<div class="stileone" > 
    Div Content 
</div> 
</td> 
<td></td> 
<td></td> 
</tr> 

</table> 
</body> 
</html> 

ответ

3

два способа

  1. Загрузить скрипт в конце тела!

    <script> 
    $(".stileone").on("click", function() { 
        $(this).css("background", "blue"); 
    }); 
    </script> 
    

  2. Или завернуть в $(document).ready(function(){})

    <script> 
    $(document).ready(function(){ 
        $(".stileone").on("click", function() { 
        $(this).css("background", "blue"); 
        }); 
    }); 
    </script> 
    

Причина

Когда сценарий был выполнен, не было DOM объекта сопоставления его. Итак, это причина, по которой обработчик не привязывался к элементу.


Для изменения цвета вы можете сделать что-то подобное.

$(".stileone").on("click", function() { 
    if ($(this).css("background") == "blue") 
     $(this).css("background", "red"); 
    else if ($(this).css("background") == "red") 
     $(this).css("background", "green"); 
    else if ($(this).css("background") == "green") 
     $(this).css("background", "blue"); 
}); 
+0

который все jquery lib нужен для этого ??? – Navi

+0

ничего, только jQuery.js ... :) –

+0

если я хочу chnage цвет других divs в столбце itehr, то примените тот же код с differnt color ryt ?? – Navi

Смежные вопросы