1

几天前我开始研究高级Java(我知道,现在开始太晚了)。我被困在使图标(出现在任务栏上)闪烁的特定任务中。这种闪烁应该基于特定条件发生,这意味着可以使用javascript.

我已经搜索了一段时间,但是有没有办法让图标每隔 1 秒左右出现和消失一次以带来闪烁效果?

4

3 回答 3

5

HTML

<img src='image/source' alt='blinking!' id='blinking_image' />

Javascript

var img = document.getElementById('blinking_image');

var interval = window.setInterval(function(){
    if(img.style.visibility == 'hidden'){
        img.style.visibility = 'visible';
    }else{
        img.style.visibility = 'hidden';
    }
}, 1000); //the 1000 here is milliseconds and determines how often the interval should be run.

这会在其中创建一个匿名函数,该函数setInterval每 1 秒运行一次(1sec == 1000milisec)。要查看有关 setInterval的更多信息,请查看此处的 mdn。

每次运行时,它都会检查是否img存在hiddenvisible是否隐藏,然后显示它是否可见,然后将其隐藏。它通过检查style.visiblity属性来做到这一点。您可以在 mdn 上了解更多信息。

于 2013-04-30T04:58:21.600 回答
3

小修复

反而

if(img.display == 'hidden')

利用

if(img.style.visibility == 'hidden')
于 2014-07-14T11:49:27.493 回答
0

您可能会发现不透明度效果更好,因为图像仍然存在,这意味着它仍然可以在必要时单击。您也可以添加一个明确的间隔来停止闪烁。

var mycounter = 0
interval = window.setInterval(function () {
if (img.style.opacity == '0.1') {
            img.style.opacity = '1';

            mycounter = mycounter + 1
            if (mycounter == 7) {
                clearInterval(interval);
            }
        } else {
            img.style.opacity = '0.1';
        }
    }, 500); //the 1000 here is milliseconds and determines how often the interval 
于 2019-07-16T11:28:50.170 回答