Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.07.2010, 23:44
Аспирант
Отправить личное сообщение для igsavenko Посмотреть профиль Найти все сообщения от igsavenko
 
Регистрация: 15.01.2010
Сообщений: 83

Помогите исправить (движение по элементам)
Вот написал такую корявую функцию, которая ДОЛЖНА двигаться по всем элементам по очереди и добавлять к каждому класс при последующем вызове очищать все и добавить этот класс к следующему. Как бы функция это самое и делает, но как сделать задержку... иначе сразу в конец убегает

$(document).ready (function () {

        $('#viewscarousel-anounce-roller-block-1 li:first').addClass('clicked');
        $('.top-block-announce-roller-block:first').addClass('checked');
        var a;
        $('#viewscarousel-anounce-roller-block-1 li').each( function() {
            setInterval(function() {
            $('#viewscarousel-anounce-roller-block-1 li').removeClass('clicked');
            /*ВОТ ТУТ НАЧИНАЮТСЯ ПРОБЛЕМЫ THIS НЕ ИЗВЕСТЕН*/
            $(this).toggleClass('clicked');
            if($(this).hasClass('clicked'))
            {
                var id = $(this).attr('jcarouselindex');
                var doc = $('.top-block-announce-roller-block').each(
                    function() {
                        $(this).removeClass('checked');
                        var fid = $(this).attr('identify');
                        if(fid == id)
                        {
                            $(this).addClass('checked');
                        }
                    }
                );
            }
            },4000)
        })
});

Помогите а то я не справлюсь без Вашей помощи

Последний раз редактировалось igsavenko, 08.07.2010 в 00:13.
Ответить с цитированием
  #2 (permalink)  
Старый 08.07.2010, 01:25
dyn dyn вне форума
Новичок на форуме
Отправить личное сообщение для dyn Посмотреть профиль Найти все сообщения от dyn
 
Регистрация: 27.08.2009
Сообщений: 1

Попробуйте сохранить ссылку this в переменной до вызова setInterval
var obj = this;

а внутри функции, которая вызывается через setInterval, используйте вместо this переменную obj
Ответить с цитированием
  #3 (permalink)  
Старый 08.07.2010, 05:21
Аспирант
Отправить личное сообщение для igsavenko Посмотреть профиль Найти все сообщения от igsavenko
 
Регистрация: 15.01.2010
Сообщений: 83

да делал я так, все ровно он undefined
Ответить с цитированием
  #4 (permalink)  
Старый 08.07.2010, 07:05
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

Перед интервалом

window.obj = this;
Ответить с цитированием
  #5 (permalink)  
Старый 08.07.2010, 07:38
Аспирант
Отправить личное сообщение для igsavenko Посмотреть профиль Найти все сообщения от igsavenko
 
Регистрация: 15.01.2010
Сообщений: 83

почему-то задержки все равно нет после каждого перемещения по объектам. Задержка срабатывает изначально 4сек, а потом очень быстро оказывается на последнем объекте.
$(document).ready (function () {

        $('#viewscarousel-anounce-roller-block-1 li:first').addClass('clicked');
        $('.top-block-announce-roller-block:first').addClass('checked');
        var a;
        $('#viewscarousel-anounce-roller-block-1 li').each( function() {
            window.obj = this;
            setInterval(function() {
            $('#viewscarousel-anounce-roller-block-1 li').removeClass('clicked');
            $(obj).toggleClass('clicked');
            if($(obj).hasClass('clicked'))
            {
                var id = $(obj).attr('jcarouselindex');
                var doc = $('.top-block-announce-roller-block').each(
                    function() {
                        $(this).removeClass('checked');
                        var fid = $(this).attr('identify');
                        if(fid == id)
                        {
                            $(this).addClass('checked');
                        }
                    }
                );
            }
            },4000)
        })
});
Ответить с цитированием
  #6 (permalink)  
Старый 09.07.2010, 07:22
Аспирант
Отправить личное сообщение для igsavenko Посмотреть профиль Найти все сообщения от igsavenko
 
Регистрация: 15.01.2010
Сообщений: 83

Никто не поможет, может быть без each как-то можно сделать?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Движение объекта в ячейке определённого размера lammeR Общие вопросы Javascript 4 20.04.2010 17:14
Исправить код Serghei Общие вопросы Javascript 2 13.04.2010 12:49
Помогите исправить ошибку в коде JsLoveR Общие вопросы Javascript 2 18.12.2009 21:09
Помогите исправить расположение окон abramovichanya Работа 2 10.07.2009 02:00
Помогите исправить скрипт по поиску в базе данных dok_sj2 Internet Explorer 2 29.06.2009 20:04