Показать сообщение отдельно
  #1 (permalink)  
Старый 21.08.2011, 11:07
Аспирант
Отправить личное сообщение для mikel Посмотреть профиль Найти все сообщения от mikel
 
Регистрация: 22.11.2009
Сообщений: 30

Не удается сделать undelegate
Подскажите,плз...
Вот есть набор фоток, у первой непрозрачность 1, у остальных по 0.6.
На все, кроме первой, вешаюся события mouseout и mouseover, меняющие непрозрачность с 0.6 до 1 и обратно. Пытаюсь по клику на фотке отвязать mouseout от кликнутой фотки, чтобы непрозрачность оставалась 1. Но почему-то не срабатывает.

$(document).ready(function () {
            function imgOver() {
                $(this).animate({ opacity: '1.0' }, 100);
            }

            function imgOut() {
                $(this).animate({ opacity: '0.6' }, 100);
            }

            if ($('.detail-foto-list img') != null) {
                var i = 0;
                $('.detail-foto-list img').each(function () { //Начало цикла 1
                    $(this).css('cursor', 'pointer');

                    if (i > 0) {
                        $(this).animate({ opacity: '0.6' }, 1);
                        $("body").delegate("#img" + (i + 1), "mouseover", imgOver);
                        $("body").delegate("#img" + (i + 1), "mouseout", imgOut);

                        $("body").delegate("#img" + (i + 1), "click", function () {
                            $("body").undelegate("#img" + (i + 1), "mouseout", imgOut);
                        });
                    }
                    i++;
                }); //Конец цикла 1
            }
        });

Последний раз редактировалось mikel, 21.08.2011 в 11:14.
Ответить с цитированием