使光标在计时器上变为透明(0.5)

时间:2016-10-19 07:43:54

标签: javascript jquery html css

这里是代码,但它没有完全消失,是否有某种方法可以让它变为0.5不透明度?对此的帮助将非常感激。

$(function () {
var timer;
var fadeInBuffer = false;
$(document).mousemove(function () {
    if (!fadeInBuffer) {
        if (timer) {
            console.log("clearTimer");
            clearTimeout(timer);
            timer = 0;
        }

            console.log("fadeIn");
        $('.fade-object').fadeIn();
        $('html').css({
            cursor: ''
        });
    } else {
        fadeInBuffer = false;
    }


    timer = setTimeout(function () {
        console.log("fadeout");
        $('.fade-object').fadeOut()
        $('html').css({
            cursor: 'none'
        });
        fadeInBuffer = true;
    }, 2000)
});
});

2 个答案:

答案 0 :(得分:2)

您可以使用fadeTo()。希望这会有所帮助。



$(function () {
var timer;
var fadeInBuffer = false;
$(document).mousemove(function () {
    if (!fadeInBuffer) {
        if (timer) {
            clearTimeout(timer);
            timer = 0;
        }
        $('.fade-object').fadeTo('slow', 1);
        $('html').css({
            cursor: ''
        });
    } else {
        fadeInBuffer = false;
    }


    timer = setTimeout(function () {
        $('.fade-object').fadeTo('slow', 0.5)
        $('html').css({
            cursor: 'none'
        });
        fadeInBuffer = true;
    }, 2000)
});
});

.fade-object{
  height: 300px;
  background: red;
  width: 100%;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="fade-object"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

**更新**

尝试使用setInterval而不是setTimeout,并且从10到0变为disapear,从0到10变为reapear(根据文件名)。

通过在10个阶段中将alfas从0更改为100来自定义png游标来执行此操作。

以下是我准备的一些图片:Opacity 100%Opacity 90%Opacity 80%Opacity 70%Opacity 60%Opacity 50%,{{3} },Opacity 40%Opacity 30%Opacity 20%Opacity 10%&lt;&lt;最后一个是0%

请记住,你的光标(鼠标指针)WON&#T; T如果它不移动**就会改变它的自定义图像,所以..你需要以编程的方式将光标至少翻译10px,同时迭代10张图像。

**更新2 **

在这里你可以感受到这个想法。 //codepen.io/jjyepez/pen/xEQAXZ

PS(忘记翻译光标......无论如何都没有必要)