0

探しているものの例が見つかりません-

jquery なしで動作する JavaScript スライドショーが必要です。スライドショーで行う必要があるのは、画像を 1 つずつ表示することです (フェード アニメーションがあると便利です)。各画像は別のページへのリンクになります。問題があるので、jquery を使用しないことが重要です。次の一時停止などのコントロールやキャプションは必要ありません。ただ<a> <img/> </a>

4

2 に答える 2

3
<!DOCTYPE html>
<html lang="en-US">

  <head>
    <title>JavaScript Fade - Brugbart Example</title>
    <style type="text/css">
#Slideshow {
  opacity: 1.0;              /* CSS3 */
  -moz-opacity: 1.0;         /* Older versions of Firefox */
  -khtml-opacity: 1.0;       /* Older versions of Safari */
  filter: alpha(opacity=100); /* Internet Explorer */
}
#Slideshow div {display:none;}
#Slideshow #slice1 {display:block;}
div{font-family: arial, sans-serif}

div{font-size:50px}
    </style>
  </head>

  <body>
   <div id="Basement" style="width:90%;margin:auto;">
    <div id="Slideshow">
      <div id="slice1">111111
      </div>
      <div id="slice2">222222
      </div>
      <div id="slice3">333333
      </div>
    </div>
   </div>

<script type="text/javascript">



    /* Creted with a reference from http://brugbart.com/slideshow-fade-javascript */

    var duration = 250; /* fade duration in millisecond */
    var hiddentime = 250; /* time to stay hidden */
    var showtime = 1000; /* time to stay visible */

    var active = 0 /* Used to check if fade is active */
    var iEcount = 0 /* Element Counter */

    var element = document.getElementById("Slideshow");

    var iEarray = element.getElementsByTagName('div');
    var iEtotal = iEarray.length;

    StartFade();
    function StartFade()
    { 
        iEcount = 1;
        setTimeout("FadeOut()", showtime);
    }

    function FadeOut()
    {
        for (i = 0; i <= 1; i += 0.01)
        {
            setTimeout("SetOpa(" + (1 - i) +")", i * duration);
        }
        setTimeout("FadeIn()", (duration + hiddentime));
    }

    function FadeIn()
    {
        for (i = 0; i <= 1; i += 0.01)
        {
            setTimeout("SetOpa(" + i +")", i * duration);
        }
        if (iEcount == iEtotal)
        {
            iEcount = 1
            document.getElementById("slice" + iEcount).style.display = "block";
            document.getElementById("slice" + iEtotal).style.display = "none";
        }
        else
        {
            document.getElementById("slice" + (iEcount + 1)).style.display = "block";
            document.getElementById("slice" + iEcount).style.display = "none";
            iEcount = iEcount+1
        }
        setTimeout("FadeOut()", (duration + showtime));
    }
    function SetOpa(Opa)
    {
        element.style.opacity = Opa;
        element.style.MozOpacity = Opa;
        element.style.KhtmlOpacity = Opa;
        element.style.WebkitOpacity = Opa;
        element.style.KhtmlOpacity = Opa;
        element.style.MsOpacity = Opa;
        element.style.width = "500px";
        element.style.filter = 'alpha(opacity=' + (Opa * 100) + ');';
    }

</script>

于 2014-03-29T04:31:11.770 に答える