Удаление класса при клике на объект
Есть скрипт
$(document).ready(function() { $('.F0').click(function(){ alert('F0'); $(this).removeClass('F0'); }); }); При щелчке по объекту класса F0 его класс удаляется, он-то вроде удаляется (это видно,если класс имеет визуальные свойства), но при повторном клике функция вновь вызывается,почему?И как сделать так,чтоб она уже не вызывалась? |
CSS-классы никак не связаны с событиями элементов, это всего-лишь значения атрибута class, по которым выполняется поиск элементов, обработчики событий привязываются к каждому найденному элементу с помощью addEventListener/attachEvent (bind в jQuery). Для удаления обработчиков событий предусмотрен специальный метод:
http://api.jquery.com/off/ |
$('.F0').click(function(e){ alert('F0'); $(this).removeClass('F0'); $(this).unbind(e); }); |
есть же метод one http://api.jquery.com/one/ для одноразовых событий
$('.F0').one('click', function(e){ alert('F0'); $(this).removeClass('F0'); }); |
Часовой пояс GMT +3, время: 09:12. |