【jquery实现的背景颜色】jQuery实现的背景颜色渐变动画效果示例

更新时间:2021-08-05    来源:jquery    手机版     字体:

【www.bbyears.com--jquery】

 代码如下 "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">"Content-Type" content="text/html; charset=UTF-8">背景颜色渐变<script type="text/javascript" src="jquery-1.7.2.min.js"></script>"Button1" type="button" value="button" onclick="tggg()" /><script>  word">function tggg() {    //$("#asd").css({ "background-color": "red" }).show().fadeOut(500);    fadeColor(    { r: 0, g: 255, b: 0 }, //star color    {r: 255, g: 255, b: 255 }, //end color    word">function (color) { document.getElementById("asd").style.backgroundColor = color; }, 1, 10);  }  //所有代码的执行时间只有24毫秒左右。  function fadeColor(from, to, callback, duration, totalFrames) {    //用一个函数来包裹setTimeout,根据帧数来确定延时    function doTimeout(color, frame) {      setTimeout(function () {        try {          callback(color);        } catch (e) { JSLog.write(e); }      }, (duration * 1000 / totalFrames) * frame);      //总持续秒数/每秒帧数*当前帧数=延时(秒),再乘以1000作为延时(毫秒)    }    // 整个渐变过程的持续时间,默认为1秒    var duration = duration || 1;    // 总帧数,默认为持续秒数*15帧,也即每秒15帧    var totalFrames = totalFrames || duration * 15; var r, g, b; var frame = 1;    //在第0帧设置起始颜色    doTimeout('rgb(' + from.r + ',' + from.g + ',' + from.b + ')', 0);    //计算每次变化所需要改变的rgb值    while (frame < totalFrames + 1) {      r = Math.ceil(from.r * ((totalFrames - frame) / totalFrames) + to.r * (frame / totalFrames));      g = Math.ceil(from.g * ((totalFrames - frame) / totalFrames) + to.g * (frame / totalFrames));      b = Math.ceil(from.b * ((totalFrames - frame) / totalFrames) + to.b * (frame / totalFrames));      // 调用本frame的doTimeout      doTimeout('rgb(' + r + ',' + g + ',' + b + ')', frame); frame++;    }  }</script>"width: 600px; height: 200px; border: 1px solid red;" id="asd">  脚本之家欢迎各位光临--http://www.jb51.net


本文来源:http://www.bbyears.com/wangyezhizuo/134017.html