移动的彩虹

Posted mb61b856e04bb98

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了移动的彩虹相关的知识,希望对你有一定的参考价值。


 <html>

 <head>

  <style>

   #bg

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:100%;

    background:#000;

    font-size:40px;

    color:#ccc;

    text-align:center;

   


   #colorLine

    width:400px;

   

   #colorLine div

    width:5px;

    height:2px;

    float:left;

    overflow:hidden;

   

  </style>

 </head>

<body>

 <table id="bg">

  <tr >

   <td>

    彩虹进度条

   </td>

  </tr>

  <tr  >

   <td align=center>

    <div id="colorLine">

    </div>

   </td>

  </tr>

  <tr>

   <td></td>

  </tr>

 </table>

</body>

</html>

<script>

 var IE6 = navigator.userAgent.toLowerCase().indexOf(ie)+1 &&

/MSIE (5\\.5|6\\.)/i.test(navigator.userAgent);

 var CL = document.getElementById(colorLine);


 //创建彩虹条

 function makeCLine()


  var r = 255;

  var g = 0;

  var b = 0;

  var step = 1;


  // 1. 增加绿色

  // 2. 减少红色

  // 3. 增加蓝色

  // 4. 减少绿色

  for(var i = 0; i < 80; i ++ )

     var node = document.createElement(div);

     if(g > 255 && step == 1)

      step = 2;

     if(r < 0 && step == 2)

      step = 3;

     if(b > 255 && step == 3)

      step = 4;

     node.style.backgroundColor = rgb( + r + , + g + , + b + );

     CL.appendChild(node);

     if(step == 1)

     g += 14;

     if(step == 2)

     r -= 14;

     if(step == 3)

     b += 14;

     if(step == 4)

     g -= 14;

  


  var oNodeL = IE6 ? CL.firstChild : CL.firstChild.nextSibling;

  var oNodeR = CL.lastChild;

  //制作两端渐变效果

     for(var i = 0; i < 20; i ++ )

      oNodeL.style.cssText += ;opacity:+ (0.05 * i) +

;filter:Alpha(Opacity= + (0.05 * i * 100) +);

      oNodeR.style.cssText += ;opacity:+ (0.05 * i) +

;filter:Alpha(Opacity= + (0.05 * i * 100) +);

        oNodeL = oNodeL.nextSibling;

         oNodeR = oNodeR.previousSibling;

     

 

//移动彩虹条

function makeCLMove()

   var colors = [];

   for(var i = CL.lastChild; i; i = i.previousSibling)

  

      if(i.style)

      colors.unshift(i.style.backgroundColor);

  

   var flag = 1;

   var j = 0;

   setInterval(function()

  

      var sTempColor = CL.lastChild.style.backgroundColor;

      var oNodeL = IE6 ? CL.firstChild : CL.firstChild.nextSibling;

      for(var i = CL.lastChild; i; i = i.previousSibling)

     

         if(i.previousSibling && i.previousSibling.style)

         i.style.backgroundColor = i.previousSibling.style.backgroundColor;

     

      if(j > (colors.length - 1))

       flag = 0;

      else if(j < 1)

       flag = 1;

      oNodeL.style.backgroundColor = flag ? colors[j ++ ] : colors[j -- ];

   , 1);

makeCLine();

makeCLMove();

</script>



以上是关于移动的彩虹的主要内容,如果未能解决你的问题,请参考以下文章

【VC++】求编程思路,想做一个随鼠标移动的矩形框

彩虹乐队的歌~~~~~~~~~

彩虹岛副职业转职流程

华数互联网电视彩虹box认证不成功怎么办

王心凌彩虹的微笑是不是抄袭断背山中的某个插曲?

FC彩虹岛的金手指是啥?