当前位置: 代码迷 >> JavaScript >> jQuery的简单的屏幕保护程序
  详细解决方案

jQuery的简单的屏幕保护程序

热度:30   发布时间:2023-06-13 12:31:52.0

大家好,我正在阅读这篇我创建了一个简单的屏幕保护程序,但是我遇到了一个问题,当我停下鼠标时,我需要隐藏一个div并显示另一个,但是当div显示动画停止时,我的问题是什么,我的代码

var mousetimeout;
var screensaver_active = false;
var idletime = 5;

var screenSaver = $("#screenSaverForm");
var formDiv = $("#bodyForm");

function show_screensaver() {
    formDiv.fadeOut(100);
    screenSaver.fadeIn(900);
    screensaver_active = true;
}

function stop_screensaver() {
    screenSaver.fadeOut(100);
    formDiv.fadeIn(900);
    screensaver_active = false;
}

$(document).mousemove(function () {
    clearTimeout(mousetimeout);

    if (screensaver_active) {
        stop_screensaver();
    }

    mousetimeout = setTimeout(function () {
        show_screensaver();
    }, 1000 * idletime); // 5 secs          
});

和div:

<div id="screenSaverForm" style="background-image: url(../../Content/img/screensavers.jpg); position: absolute; width: 100%; height:100%; left:0px; top: 0px; display: none; z-index:9999; display: none;">Example of a DIV element with a background image:</div>

其他div很简单,如果有帮助的话,在显示动画之前我需要重新加载页面,有人知道该怎么做吗?

您可以尝试在stop_screensaver()之前添加此行;

.
...
if (screensaver_active) {
    location.reload(); //Refreshes the page
    stop_screensaver();
}
...
.

或者,如果您只想滚动到页面顶部:

.
...
if (screensaver_active) {
    $(window).scrollTop(0); //Scroll to top of page
    stop_screensaver();
}
...
.
  相关解决方案