powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как продлить задержку?
10 сообщений из 10, страница 1 из 1
Как продлить задержку?
    #38095423
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создается элемент, который через 5 сек. удаляется. Если приходит команда на создание нового элемента, а старый еще жив, то отчет времени должен начаться заново.

Делаю так
Код: javascript
1.
2.
3.
4.
5.
if (!$('#elem').length) {
    var $elem = $(templateElem).appendTo('#cont').delay(5000).queue(function (next) { $(this).remove(); next(); })
} else {
    var $elem = $('#elem').eq(0).stop(true).delay(5000).queue(function (next) { $(this).remove(); next(); })
}


Но не пашет
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095445
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095473
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошая штука, но отдельным плагином. Можно как-нибудь без нее? Это все равно второстепенный код, который скорее удалят, чем будут переписывать, поэтому лучше покороче и без доп. средств.
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095497
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что записать вместо context, чтобы передать в безымянную ф-ю ссылку на текущий jQuery-объект?
Код: javascript
1.
$('cont').data('reload',(function () {})(context))
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095507
няка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: javascript
1.
2.
   clearTimeout($elem.data("timer"));
   $elem.data("timer", setTimeout(function() { код по истечению таймаута }, 5000));
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095534
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shitbox2Хорошая штука, но отдельным плагином. Можно как-нибудь без нее? Это все равно второстепенный код, который скорее удалят, чем будут переписывать, поэтому лучше покороче и без доп. средств. Без чего?
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095538
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Небольшая проблемка. код по истечению таймаута должен удалять элемент на который повешен таймер и содержать что-то вроде context.remove(), где context это объект $elem
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095542
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAБез чего?
Без сторонних плагинов и дополнительных функций. Все должно содержаться в самом коде и быть, по возможности, компактным
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095546
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shitbox2skyANAБез чего?
Без сторонних плагинов и дополнительных функций. Все должно содержаться в самом коде и быть, по возможности, компактнымИсходники смотреть не пробовал? Там так много кода, аж жуть! Аж уж написать это самому...
...
Рейтинг: 0 / 0
Как продлить задержку?
    #38095553
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИсходники смотреть не пробовал? Там так много кода, аж жуть! Аж уж написать это самому...
Там на самом деле много кода)
У меня заработал такой способ:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
if (!$('#elem').length) {
    var $elem = $(templateElem).appendTo('#cont').each( function () {
        var el = $(this);
        el.data('reload', function () {              
            clearTimeout(el.data('timer'));
            el.data('timer', setTimeout((function (elem) {
                return function () { elem.remove() }
            })(el), 5000));
            return el
        });
        return this
    }).data('reload')()
} else {
    var $elem = $('#elem').eq(0).data('reload')()
}


Конечно, хотелось бы упростить, а в идеале починить самый первый способ с очередями
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как продлить задержку?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]