Удаление класса при клике на объект
Есть скрипт
$(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, время: 02:41. |