Программирование => JavaScript & JScript => Тема начата: от 11 Декабря 2001, 10:06:00
Название: onmousedown?
Отправлено: от 11 Декабря 2001, 10:06:00
подскажите,пожалуйста... как заставить скрипт выполняться >>>пока<<< на элементе формы нажата кнопка мыши, а не один раз после ее нажатия
Название: onmousedown?
Отправлено: Макс от 11 Декабря 2001, 14:51:26
Думаю здесь нужно два события отслеживать - onmousedown и onmouseup.
А алгоритм примерно такой: 1. Объявляешь переменную - например var isUp="n" // кнопка не была отпущена
2. Делаешь такую функцию: function doSomething() { while(isUp=="n") { // здесь пишешь текст скрипта ....
} }
3. Кнопку выполняешь так:
Думаю так должно работать.
Название: onmousedown?
Отправлено: от 11 Декабря 2001, 20:49:40
Макс, спасибо за предложенную помощь Идея, скорее всего, правильная. Но это решение не подходит, т.к. событие onmouseup не обрабатывается из-за зацикливания в while :( Пытаюсь найти работающий аналогичный скрипт, но безуспешно. Может есть еще к.-н. варианты
Название: no threads...
Отправлено: Oak от 11 Декабря 2001, 22:49:35
Так это всегда так и будет :) Ты не можешь заставить скрипт выполнятся настолько долго!!!!! Зато можешь его вызывать раз в секунду или чаще.
function doSomething() { / здесь пишешь текст скрипта
if(isUp=="n") setTimeout("doSomething() ",1000); // eto 1na sekunda }
Название: onmousedown?
Отправлено: от 11 Декабря 2001, 23:18:27
Теперь - > Работает!!! Спасибо :))
Название: onmousedown?
Отправлено: от 14 Декабря 2001, 11:23:49
Работает, но не так, как хотелось бы (Чтобы кнопки работали, как у полосы прокрутки окна, только располагались отдельно). Второе нажатие мыши не обрабатывается - setTimeout видимо виноват. Вот мой "кривой" вариант скрипта:
Поможите, please :( --> :)
Название: onmousedown?
Отправлено: lodevar от 14 Декабря 2001, 12:18:03
Не понял... Что же не так работает?
Название: onmousedown?
Отправлено: от 14 Декабря 2001, 19:39:25
Цитировать
Не понял... Что же не так работает?
Это как DblClick, но только если после первого клика не отпускать кнопку мыши (быстро нажал-отпустил-нажал :) ) - не листает. А надо точь-в-точь (повторяюсь) как у кнопок полосы прокрутки, только на JavaScript
Мелочь, конечно. Но в скрипте все должно быть прекрасно, как и в человеке. Эх, хорошо сказал...
Название: onmousedown?
Отправлено: Макс от 14 Декабря 2001, 20:27:50
Наверное для ondblclick свой обработчик нужен.
Название: onmousedown?
Отправлено: от 14 Декабря 2001, 20:43:46
Цитировать
Наверное для ondblclick свой обработчик нужен.
Но так ведь событие ondblclick обратывать и не надо. Кнопка же не отжата
Название: onmousedown?
Отправлено: от 14 Декабря 2001, 20:50:01
Цитировать
Но так ведь событие ondblclick обратывать и не надо. Кнопка же не отжата
Или с "не отжата" тоже считается "двойным кликом". Наверно, да (совсем плохой стал - сам с собой перепечатываюсь)
Пробовал уже - не ра-бо-та-ет
Название: onmousedown?
Отправлено: Oak от 15 Декабря 2001, 02:40:50
Название: onmousedown?
Отправлено: от 15 Декабря 2001, 21:43:07
Цитировать
Это как DblClick, но только если после первого клика не отпускать кнопку мыши (быстро нажал-отпустил-нажал ) - не листает. А надо точь-в-точь (повторяюсь) как у кнопок полосы прокрутки, только на JavaScript
Oak, спасибо. Но эффект тот же. MISSION IMPOSSIBLE
Название: onmousedown?
Отправлено: Oak от 16 Декабря 2001, 02:17:45
http://www.DanStainman.com/dynduo/
-> DynWindow - polnocennoe okno so skrollerami.
http://www.ozones.com/ - tozhe okno so skrollerami
vse na JS for NN4+IE
Название: onmousedown?
Отправлено: от 17 Декабря 2001, 21:58:38
в этих примерах скрипт, отвечающий за кнопки прокрутки окна ТОЧНО ТАКЖЕ НЕ ОБРАБАТЫВАЕТ НУЖНОЕ МНЕ СОБЫТИЕ, А ИМЕННО (устал уже повторять) onmousedown-onmouseup-onmousedown И НАЖИМАЕТСЯ ЭТО БЫСТРО КАК DBLCLICK НО НЕ ОТЖИМАЯ КНОПКУ МЫШИ !-!!-!!! если это не реализуется на JavaScript или никто из здесь присутствющих уважаемых программистов не знает КАК ЭТО СДЕЛАТЬ, пожалуйста, ТАК И СКАЖИТЕ
Название: onmousedown?
Отправлено: NAS от 17 Декабря 2001, 22:10:08
Цитировать
И НАЖИМАЕТСЯ ЭТО БЫСТРО КАК DBLCLICK НО НЕ ОТЖИМАЯ КНОПКУ МЫШИ
КАК МОЖНО НАЖИМАТЬ НЕ ОТЖИМАЯ ???
Название: onmousedown?
Отправлено: от 17 Декабря 2001, 22:54:21
Зачем придираться к словам :) -> :( Смысл вопроса ведь ясен?! Если нет - посмотрите предыдущие сообщения. Если нужно я терпеливо постараюсь сформулировать вопрос иначе - понятнее, точнее, приведу примеры. Хотя всё это было уже сделано мной и другими участниками форума, проявившими интерес к проблеме. В любом случае, спасибо за внимание, Алексей.
Название: onmousedown?
Отправлено: Oak от 18 Декабря 2001, 03:29:14
То что я тебе написал расчитано на то, что ты хочешь учиться, а не просто тупо получить результат.
В Netscape4 - он работает так, как тебе надо В IE - если слишком быстро кликаешь - то срабатывает через раз. Если кликаеш сравнительно медленно, то так,как ты хочешь. Как по мне - это глюк IE (мне лень копать глубже).
Ато, что ты даже не удосужился посмотреть в какой строке выдается ошибка, говорит о том, что в тебе нет любознательности - извини, больше я не буду тебе отвечать. :(
Название: onmousedown?
Отправлено: от 18 Декабря 2001, 09:06:05
Цитировать
Ато, что ты даже не удосужился посмотреть в какой строке выдается ошибка, говорит о том, что в тебе нет любознательности - извини, больше я не буду тебе отвечать.
Все опечатки в предыдущем варианте скрипта я исправил, поэтому никакой ошибки не выдавалось. Теперь пошел учиться на следующем...
Название: onmousedown?
Отправлено: от 18 Декабря 2001, 09:12:00