Решение JQuery Timeout? - PullRequest
       0

Решение JQuery Timeout?

3 голосов
/ 26 января 2011

Скажем (я упрощаю), у меня есть 4 div с содержимым ... Мне нравится их плавать / скрывать, если мышь оставляют неподвижной в течение 2 секунд и когда мышь снова двигается ... пусть быстро заставит все появиться снова...

насколько просто это сделать в jquery?

я не очень привык к тайм-ауту и ​​мышке .. больше css привык!


Я гуглюдля «концепции» и найдите, что: Скрыть элемент div с помощью jQuery, когда мышь не движется в течение определенного периода времени?

Я буду исследовать, если сработает!

Ответы [ 2 ]

1 голос
/ 26 января 2011

Вам необходимо создать запусковой таймер, который перезапускается при каждом перемещении мыши.

$(document).bind('mousemove', function() {
    var $somediv = $('#somediv');

    return function() {
        if(!$somediv.is(':visible'))
            $somediv.fadeIn('slow');

        this.tID && clearInterval(this.tID);
        this.tID = setTimeout(function() {
            $somediv.fadeOut('slow');
        }, 2000);
    };
}());

Демо : http://www.jsfiddle.net/ByrKk/

0 голосов
/ 26 января 2011

Окончательное решение ... и простое: http://paulirish.com/2009/jquery-idletimer-plugin/ jquery.idle-timer.js

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...