![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
Sattu |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 7.8.2002 Где: Західна Україна Репутация: нет Всего: 4 |
Здраствуйте.
Уважаемые господа, как корректно и красиво реализовать субж только для Mozilla? Я пробовал так: 1)
Но даный метод очень сильно нагружает баузер. 2)
Все равно делает не то... выводит: first third (пауза) second (вытирая две предыдущие строки) Как сделать правильно? --------------------
тссссс.... «ЖЖ» |
||||
|
|||||
Sardar |
|
||||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Так, разберемся что ты хочешь сделать! ![]() Мне так кажется что ты хочешь что бы некий текст добавлялся в конец страницы через паузу(usleep...) и возможно дальше идет остальная часть страницы... window.setTimeout не останавливает процесс выполнения - это правильно ![]()
Теперь мы можем поставить любое действие на очередь по времени, т.е. действие выполнится по прерыванию таймера.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||||
|
|||||||
Sattu |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 7.8.2002 Где: Західна Україна Репутация: нет Всего: 4 |
Большое тебе, Sardar, человеческое спасибо за очень толковый ответ.
Но, к сожалению, я не обьяснил зачем мне это нужно - и ты пошел по ложному пути. Сорри.. Мне это нужно не для HTML, а для XUL (eXtensible User interface Language). На этом "диалекте" XML "пишут" интерфейсы плагинов для Mozill'ы и не только. Я пишу клиент для сервера чатов. Он общается с сервером через сокет с помощью XML-based протокола. Так вот, между посылкой некоторых пакетов нужно делать паузы в несколько секунд. И тут я застрял, никак не могу более-менее реализовать эту паузу ![]() Очень нужно чтобы функции выполнялись в строгом порядке до и после паузы. Тоесть чтобы, например, в твоем последнем коде alert() выполнялся после последнего utimer(). Возможно ли вообще такое реализовать на JavaScript? Еще раз спасибо за предыдущий ответ. --------------------
тссссс.... «ЖЖ» |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
>Так вот, между посылкой некоторых пакетов нужно делать паузы в несколько секунд.
Зачем это для чат-клиента...? Возможно обьект через который ты общаешся с сервером имеет встроенные функции для задержки времени. У xulplanet.com траблы с хостингом, я до справочника не добрался. По любому уснуть как в С, так что бы кнопки перестали реагировать не получится, и это правильно ИМXО. Я думаю что с очередью все получится, ставим отправку пакетов в очередь с задержкой, а последним действием возобновляем выполнение программы. Таймер работает паралельным процессом, т.е. код повешанный на события продолжает исполняться, так что по кнопке "прервать" можно легко очистить очередь.' Подробней опиши задачу, когда и зачем отправляем пакеты, через какие обьекты, как принимается ответ сервера(событие, опрашиваем обьект...) и т.п. Как-нибудь разберемся ![]() -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
Sattu |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 7.8.2002 Где: Західна Україна Репутация: нет Всего: 4 |
Да мне и не надо чтобы кнопки не реагировали, просто чтобы скрипт (а не браузер) "засыпал".
Ты прав, по видимому придется использовать очереди.
Я использую библиотеку JSLib, вернее только один ее скрипт socket.js. Он разрешает делать базовые операции с сокетом (open, read, write, close). Перестрою принцып работы клиента - и думаю, что всеже удастся обойти паузу. Я просто не очень опытен в JavaScript'е, и иногда пытаюсь решить задачу "в лоб". Но JavaScript требует особого подхода и мышления, к котому, я надеюсь, довольно скоро привыкну ![]() --------------------
тссссс.... «ЖЖ» |
||||||
|
|||||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
По сути socket.sj оболочка это оболочка для SocketService. Класс юзает только входящий и исходящий поток(метод open), если покопатся в nsISocketTransportService, может там есть функции time-out'а. Но все же логику работы лучше продумать ![]() -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |