如何在我的JavaScript幻灯片中添加淡出效果?

时间:2015-01-13 02:03:12

标签: javascript html css slideshow

我目前正在处理简单的网页,并使用JavaScript添加了三张图片的幻灯片。我喜欢幻灯片的其他网站如何淡入和淡出每个图像,而不是突然改变。请告诉我如何将这种影响添加到我当前的代码中,同时只使用CSS,标准HTML和Java Script。这是我的HTML代码

    <!DOCTYPE html>
<html>
        <head>
            <title>Car Of Your Dreams Australia</title>
            <link rel="shortcut icon" href="?\favicon.ico">
            <link rel="stylesheet" type="text/css" href="stylesheet.css">
            <h1> Car Of Your Dreams Australia </h1>


<script type="text/javascript">

var slideimages = new Array() 
slideimages[0] = new Image() 
slideimages[0].src = "r8.jpg" 
slideimages[1] = new Image()
slideimages[1].src = "California.jpg"
slideimages[2] = new Image()
slideimages[2].src = "SLSAMG.jpg"

</script>
<body>
        <img src="r8.jpg" id= "slide" width=1336 height=768 />

        <script type = "text/javascript">
        var step=0

        function slideit(){
        if (!document.images)
        return
        document.getElementById('slide').src = slideimages[step].src
        if (step<2)
        step++
        else
        step=0
        setTimeout("slideit()",5000)
        }

        slideit()

        </script>
</body>

        </head>
        </html>

和我的CSS

body {background-color:#000000;}
h1 {color:#FF0040;}
p1 {color:#C1CDCD;}

h1 {
    font-family: Calibri;
    font-size: 26px;
    font-style: normal;
    font-variant: normal;
    font-weight: bold;
    line-height: 11px;
}

p1 {
    font-family: Calibri;
    font-size: 14px;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 14px;
}

h1.italic {font-style:italic;}

.boxed {
    margin-right:750px;
    position:absolute;
    left:60px;
    top:100px;
    z-index:+1;
    border: 5px outset #E0EEEE;

}

2 个答案:

答案 0 :(得分:0)

除非你的请求要求你避免使用javascript框架,否则我会调查RevealJS。

http://lab.hakim.se/reveal-js/#/

显示你所看到的具体行动(淡入和淡出)以及更多记录。他们还有一个托管平台,如果你正在寻找的东西,以及你下载和玩的开源版本。我个人将它用于我所有自定义开发的HTML驱动幻灯片。

答案 1 :(得分:0)

为图像指定基线不透明度,并确定在1秒内发生此元素不透明度的所有过渡。

img{
    opacity:1;
    transition:opacity 1s;
}

创建一个不透明度为0的新类。

img.fade{
    opacity:0;
}

在slideit()时将此类添加到元素中;产卵:

function slideit(){
    document.getElementById('slide').classList.add('fade');

在1秒后直接添加超时功能,这将改变元素的SRC,并且还将删除淡入淡出类,从而再次触发转换。

setTimeout(function(){
    document.getElementById('slide').src = slideimages[step].src;
    document.getElementById('slide').classList.remove('fade');
}, 1000);

现在当该功能执行时,现有图像将在1秒内淡出,然后图像的SRC将会改变,然后将在1秒内淡入。