Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
 Аватар для Alexancho
0 / 0 / 0
Регистрация: 22.03.2013
Сообщений: 4

остановить действие функции

01.04.2013, 14:50. Показов 3416. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я использую функцию MoveBg(), которая перемещает фоновое изображение.
Я хочу остановить движение через несколько секунд.
Попробовал использовать setTimeout() и clearTimeout(), но движение почему-то не прекращается.
В чем проблема?

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript" language="javascript">
 
function MoveBg()
{
// some code
}
 
$(function() {
 
var i = setTimeout("MoveBg()" ,200);
setTimeout(function(){clearTimeout(i)},10000);
 
});
 
        </script>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.04.2013, 14:50
Ответы с готовыми решениями:

Как остановить действие Visual Basic
Доброго дня, форумчане! Немножко зашел в тупик. Есть база данных в access. Средствами Visual Basic создал кнопки, запрещающие и разрешающие...

Нужно остановить действие спустя некоторое время
Как добавить счетчик времени после нажатия кнопки, и что бы например через 10 сек остановилось.

Код не дожидается своей функции. Необходимо строго остановить работу кода до появления функции
Собственно пару слов о коде. Организован бесконечный цикл ожидания приёма 1 с клиента серверу и посылка данных от сервера клиенту при...

11
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
01.04.2013, 14:56
любопытно... я бы так же написал...

может переменная ( i ) где нибудь теряется ?
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
01.04.2013, 15:31
Alexancho, Может, Interval вместо Timeout'а?
0
 Аватар для Alexancho
0 / 0 / 0
Регистрация: 22.03.2013
Сообщений: 4
01.04.2013, 15:38  [ТС]
Дело в том, что setInterval() будет повторять действие функции. В моем случае это означает, что изображение будет двигаться, а затем скачком возвращаться назад. Скачки изображения в данном случае не нужны, нужно просто движение в течение нескольких секунд и затем остановка.
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
01.04.2013, 15:40
Alexancho, имелось ввиду для MoveBg() дать setInterval я так пологаю...
или у тебя MoveBg должно 1 раз проработать?
0
 Аватар для Alexancho
0 / 0 / 0
Регистрация: 22.03.2013
Сообщений: 4
01.04.2013, 15:46  [ТС]
Цитата Сообщение от and_y87 Посмотреть сообщение
Alexancho, имелось ввиду для MoveBg() дать setInterval я так пологаю...
или у тебя MoveBg должно 1 раз проработать?
Да, именно так. Один раз поработать и остановиться. Идея очень проста. Фоновое изображение больше окна браузера. Мне нужно, чтобы оно двигалось, но остановилось раньше, чем пользователь увидит край картинки.
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
01.04.2013, 15:50
Alexancho, А что если сдвинуть картинку на расстояние: с где...
a = ширина окна
b = ширина картинки
c = ( ( b - a ) - 10 )
0
88 / 88 / 34
Регистрация: 22.05.2012
Сообщений: 404
01.04.2013, 16:31
А чем не устраивает Jquery (animate)??
http://api.jquery.com/animate/
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
01.04.2013, 16:38
Интересен сам код...

что бы знать в каком контексте оно используется...
0
 Аватар для Alexancho
0 / 0 / 0
Регистрация: 22.03.2013
Сообщений: 4
01.04.2013, 18:31  [ТС]
Цитата Сообщение от Programmer_ Посмотреть сообщение
А чем не устраивает Jquery (animate)??
http://api.jquery.com/animate/
Движение неравномерное и слишком быстрое даже в случае slow
0
88 / 88 / 34
Регистрация: 22.05.2012
Сообщений: 404
02.04.2013, 01:19
Цитата Сообщение от Alexancho Посмотреть сообщение
Движение неравномерное и слишком быстрое даже в случае slow
"slow" = 600 мкс можно поставить 150 мкс
что касается setTimeout, можно так:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
$(function() {
 
    var logo = $("#id"), under = $("#id"),
                esmall = $("div.class"), a1 = 60, a2 = 80, a3 = 140, d = 1400;
 
    function move(obj, dl, amp, xgap, ygap) {
 
        xgap = xgap || 0;
        ygap = ygap || 0;
 
        var x = rand(amp) * dir() + xgap;
        var y = rand(amp) * dir() + ygap;
 
        obj.animate({marginLeft: x, marginTop: y}, {queue: false, duration: dl});
 
        setTimeout(function(){
                move(obj, rand(d), amp, xgap, ygap);
            }, dl / (2 + dir()));
 
    }
 
    move(logo, d, a1, -162);
    move(under, d, a2, -162, 45);
 
    esmall.each(function() {
        move($(this), d, a3, -50, -50);
    });
 
});
Правда откуда этот скрипт уж непомню

Добавлено через 17 минут
Вот кстати интересная статейка по теме
http://learn.javascript.ru/js-... 1%8F-delta
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
02.04.2013, 09:39
Alexancho, можно ваще то задать движению любую амплитуду(динамику) и скорость...

Добавлено через 1 минуту
а я вот ненашёл свою ссылку с графиками... =(

Добавлено через 23 секунды
Programmer_, хорошая статья... Автор темы глятнь туда...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.04.2013, 09:39
Помогаю со студенческими работами здесь

Как остановить цикл в функции, в другой функции
Пытался сделать так, программа зависает и вторая функция не работает def script(event): i = 100 while i &gt; 3 : ...

Остановить выполнение функции
Приветствую, ребята. Есть кнопка в форме, подтверждающая отправку. При нажатии, если выполнилось условие, форма не должна отправляться. Но...

Остановить выполнение функции в backgroundWorker1
backgroundWorker1 запускает на выполнение функцию, которая долго считает. После выполнения кода ниже (остановка backgroundWorker1), функция...

Не получается остановить выполнение функции в jQuery
Добрый день! Пытаюсь изменить скрипт по ресайзу дива в зависимости от размеров окна браузера. вот код скрипта: ...

Как прервать остановить выполнение функции
помогите остановить выполнение функции вот код Option Explicit Dim fso As New FileSystemObject Dim fld As Folder Private...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru