Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   toggleClass() не работает? (https://javascript.ru/forum/jquery/3546-toggleclass-ne-rabotaet.html)

inbox 30.04.2009 23:51

toggleClass() не работает?
 
Не пойму в чем дело. Есть таблица:

<table class="mytable">
        <tbody>
        <tr class="odd"><td>1</td><td>blablablablabla</td></tr>
        <tr class="even"><td>2</td><td>blablablablabla</td></tr>
        </tbody>
    </table>


и есть вот такая функция:
$(document).ready(function() {
            $('table tbody tr').click(function() {
                $(this).toggleClass('highlight');
            });
        });


при клике на строке оная не подсвечивается. Подскажите что я не так делаю?

Gvozd 01.05.2009 00:03

$(document).ready(function() {
            $('table tbody tr td').click(function() {
                $(this).parent().toggleClass('highlight');
            });
        });

наврено событие от ячейки не передается на строку

inbox 01.05.2009 10:35

Цитата:

Сообщение от Gvozd (Сообщение 17967)
$(document).ready(function() {
            $('table tbody tr td').click(function() {
                $(this).parent().toggleClass('highlight');
            });
        });

так тоже не работает. Но вот если строкам не присваивать класс, то работает. Не понятно при чем здесь класс?

e1f 01.05.2009 12:04

все там передается... просто у Вас CSS скорее всего такой, что классы odd even забивают цвет прописанный в highlight. Измените CSS так, чтобы свойства из highlight имели больший приоритет -- к примеру вместо .highlight пропишите .mytable .highlight. Или опустите его ниже.
Вот минимальный набор, где все работает:
<script type="text/javascript" src="jquery-1.2.3.js"></script>
<script type="text/javascript">
<!--
$(document).ready(function(){
  $('table tbody tr').click(function(){
    $(this).toggleClass('highlight');
  });
});
//-->
</script>
<style type="text/css">
.mytable { cursor:pointer }
.odd { background-color: #ccc }
.even { background-color: #555 }
.highlight { background-color: #f00 }
</style>
<body>
<table class="mytable">
  <tbody>
    <tr class="odd"><td>1</td><td>blablablablabla</td></tr>
    <tr class="even"><td>2</td><td>blablablablabla</td></tr>
  </tbody>
</table>
</body>

inbox 08.05.2009 16:16

Спасибо :)

e1f 08.05.2009 16:45

Пожалуйста ;)

wdtime 06.11.2016 17:18

toggleclass jquery
 
https://wdtime.ru/jquery/jquery-togg...chatel-klassov - вроде понятно все написано. Enjoy!


Часовой пояс GMT +3, время: 06:33.