Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   не двигать мышкой 1 минуту (http://www.flasher.ru/forum/showthread.php?t=65966)

Panopticum 23.06.2005 18:53

не двигать мышкой 1 минуту
 
добрый день всем участникам.

кто нибудь подскажет, как сделать такую вещь:
есть обычный сайт с сылками и прочим, но если пользователь
не двигает мышкой 1 или 5 минут, то разделы начинают прокручиваться
в режиме превъю раздел за разделом.

Sh@man 23.06.2005 18:58

работай с таймаутами

pogga 23.06.2005 18:59

ну, например, можно засекать координаты мышки и периодически их проверять, если они не изменялись какое то время (через сэтинтервал или по количеству сделаных проверок) , то запускать этот превью-режим..

Panopticum 23.06.2005 19:03

pogga, а как? есть скрипт?

pogga 23.06.2005 19:22

не, скрипта есессно нет ) - сам напиши ,)
попробуй сделать клип, который будет выполнять скрипт, раз в сколькото кадров. в скрипте: сохранение координат мыши в переменные, которые каждый раз перезаписываются, сдвигаясь на одну. то есть чтобы в десяти переменных (5 х и 5 у) всегда были последние десять результатов.
потом, сравниваешь их соответственно по 5, если обе пятерки соответственно равны друг внутри друга - включаешь превью-режим

netstuff 23.06.2005 19:28

Код:

_root.moveMenus = function(onlyClear) {
clearInterval(_root.interval);
if(!onlyClear) trace("Куда мышь потащил, гат!!!!");
}

_root.interval = setInterval(_root.moveMenus(), 60000);
_root.onMouseMove = function() {
_root.moveMenus(true);
}

типа того :D :D :D
сам доперешь?

pogga 23.06.2005 19:34

Цитата:

Сообщение от netstuff
[code]..типа того..

ну эт ты воще по-папски написал - даже кодить ниче не надо, глюки с багами отлавливать и всё такое.. так же неинтересно !! %) так жить низзя !!! ))

Dvaman 23.06.2005 19:54

Если не особо придиратся к коду то можно и так
Код:

wait = 2000;
myFun = function () {
        trace("Команда на запуск к-л действия, например Play() для мувиклипа");
        clearInterval(id);
};
this.onMouseMove = function() {
        xm = _xmouse;
        ym = _ymouse;
        clearInterval(id);
        this.onEnterFrame = function() {
                if (xPred == xm && yPred == ym) {
                        id = setInterval(myFun, wait);
                        delete this.onEnterFrame;
                }
                xPred = xm;
                yPred = ym;
        };
};


Штрек 23.06.2005 21:03

С getTimer()......
Код:

function zadergka(kol_sek) {
        mc._visible = 0;//действие
        var g = getTimer();
        this.createEmptyMovieClip('obr', 999);
        obr.onEnterFrame = function() {
                if ((getTimer()-g)/1000>kol_sek) {
                        mc._visible = 1;//действие
                        }
        };
        this.onMouseMove = function() {
                g = 0;
                zadergka(kol_sek);
                mc._visible = 0;//действие
               
        };
}
zadergka(5);//5 секунд


silin 23.06.2005 21:23

вариант:
Код:

var stay=1;
this.onMouseMove=function(){stay=0}
var id=setInterval(function(){
                                if(stay){
                                        trace('нет никаго, можно запускать..');
                                        clearInterval(id);
                                }else stay=1;
                        },2000)


Штрек 23.06.2005 21:33

Цитата:

Сообщение от silin
вариант:
Код:

var stay=1;
this.onMouseMove=function(){stay=0}
var id=setInterval(function(){
                                if(stay){
                                        trace('нет никаго, можно запускать..');
                                        clearInterval(id);
                                }else stay=1;
                        },2000)


На тебя не похоже -
недоделано - вариант однократного использования....
Рекурсию бы надо....

silin 23.06.2005 21:55

ему же тока раз запусть надо..

Dvaman 24.06.2005 04:30

Цитата:

ему же тока раз запусть надо..
Как я понял запускать надо каждый раз после того как курсор находится на одном и том же месте в течение определенного время. Что-то типа скринсервера на компутере срабатывающего при простое системы.

Panopticum 24.06.2005 13:43

Dvaman, да все верно так и нужно.
как только двинул мышом от все останавливается, а если не двигать 1мин. то снова начинает проигрываться.
А можно маленький исходник?

Штрек 24.06.2005 15:02

так уже выложили несколько вариантов -
копируй код в кадр и наслаждайся.......

silin 24.06.2005 18:41

Вложений: 1
Цитата:

Сообщение от Panopticum
Dvaman, да все верно так и нужно.
как только двинул мышом от все останавливается, а если не двигать 1мин. то снова начинает проигрываться.
А можно маленький исходник?

в таком разе можно просто не очищать интервал и все
Код:

var stay=1;
this.onMouseMove=function(){
        presentation.stop();
        stay=0;
}
var id=setInterval(function(){presentation[stay?'play':'stop']();stay=1;},1000);


Dvaman 25.06.2005 21:05

Вложений: 1
тебе осталось только вставить то что будет запусткаться по истечении заданного времени.

7thsky™ 25.06.2005 21:37

Код:


a = {};
a.intID = setInterval (a, 'nextStep', 300000);
Mouse.addListener (a);
a.nextStep = function () {
 clearInterval (this.intID);
 // тут написать все что нужно
}
a.onMouseMove = function () {
 this.intID = setInterval (this, 'nextStep', 300000);
}


seifip 07.07.2005 00:04

U menja rabotujut toljko scripty ot Dvamana i ot silina no zato efekt klasnyj!

Штрек 07.07.2005 00:31

Цитата:

Сообщение от seifip
U menja rabotujut toljko scripty ot Dvamana i ot silina no zato efekt klasnyj!

Обижаешь не хило.........

MIX-er 07.07.2005 06:14

Цитата:

Сообщение от Штрек
Обижаешь не хило.........

ты очепятился
varid != var id

Штрек 07.07.2005 23:20

Цитата:

Сообщение от MIX-er
ты очепятился
varid != var id

У меня было -
function zadergka(kol_sek) {
mc._visible = 0;//действие
var g = getTimer();
this.createEmptyMovieClip('obr', 999);
obr.onEnterFrame = function() {
if ((getTimer()-g)/1000>kol_sek) {
mc._visible = 1;//действие
}
};
this.onMouseMove = function() {
g = 0;
zadergka(kol_sek);
mc._visible = 0;//действие

};
}
zadergka(5);//5 секунд

Всё работает как из пушки........
Где тут varid != var id????

MIX-er 08.07.2005 01:00

сори..
с силином варианты перепутал...

nuran 08.07.2005 02:38

АААААААААААААААААААААААААААААААААААААААААААА

узнаю поделки Штрека, kol_sek, zadergka :D

Штрек 08.07.2005 03:14

Скоро начну писать -
кол_сек
задержка
К счастью 7ка это позволяет........... :p

silin 08.07.2005 18:56

Цитата:

Сообщение от MIX-er
сори..
с силином варианты перепутал...

ты вобще чего-то перепепутал:
никогда не писал varid != var id
и var id != var id тоже :D

MIX-er 09.07.2005 06:14

var stay=1;
this.onMouseMove=function(){stay=0}
var id=setInterval(function(){
if(stay){
trace('нет никаго, можно запускать..');
clearInterval(id);
}else stay=1;
},2000)

ну лана не прав...
var id=setInterval(function(){
ты писал...
если смотреть на это в коде ну на форуме пробела не заметно между вар и айди...


Часовой пояс GMT +4, время: 06:42.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.