jQuery實(shí)現(xiàn)的背景顏色漸變動(dòng)畫效果示例
本文實(shí)例講述了jQuery實(shí)現(xiàn)的背景顏色漸變動(dòng)畫效果。分享給大家供大家參考,具體如下:
完整實(shí)例代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>背景顏色漸變</title>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
</head>
<body>
<input id="Button1" type="button" value="button" onclick="tggg()" />
<script>
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
function (color) { document.getElementById("asd").style.backgroundColor = color; }, 1, 10);
}
//所有代碼的執(zhí)行時(shí)間只有24毫秒左右。
function fadeColor(from, to, callback, duration, totalFrames) {
//用一個(gè)函數(shù)來包裹setTimeout,根據(jù)幀數(shù)來確定延時(shí)
function doTimeout(color, frame) {
setTimeout(function () {
try {
callback(color);
} catch (e) { JSLog.write(e); }
}, (duration * 1000 / totalFrames) * frame);
//總持續(xù)秒數(shù)/每秒幀數(shù)*當(dāng)前幀數(shù)=延時(shí)(秒),再乘以1000作為延時(shí)(毫秒)
}
// 整個(gè)漸變過程的持續(xù)時(shí)間,默認(rèn)為1秒
var duration = duration || 1;
// 總幀數(shù),默認(rèn)為持續(xù)秒數(shù)*15幀,也即每秒15幀
var totalFrames = totalFrames || duration * 15; var r, g, b; var frame = 1;
//在第0幀設(shè)置起始顏色
doTimeout('rgb(' + from.r + ',' + from.g + ',' + from.b + ')', 0);
//計(jì)算每次變化所需要改變的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));
// 調(diào)用本frame的doTimeout
doTimeout('rgb(' + r + ',' + g + ',' + b + ')', frame); frame++;
}
}
</script>
<div style="width: 600px; height: 200px; border: 1px solid red;" id="asd">
腳本之家歡迎各位光臨--http://www.dhdzp.com
</div>
</body>
</html>
PS:這里再為大家推薦幾款相關(guān)的顏色與特效工具供大家參考使用:
在線特效文字/彩色文字生成工具:
http://tools.jb51.net/aideddesign/colortext
在線彩虹文字/顏色漸變文字生成工具:
http://tools.jb51.net/aideddesign/txt_caihongzi
在線發(fā)光字生成工具:
http://tools.jb51.net/aideddesign/txt_faguangzi
仿古書排版文字豎排轉(zhuǎn)換工具:
http://tools.jb51.net/transcoding/shupai
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery常用插件及用法總結(jié)》、《jquery中Ajax用法總結(jié)》、《jQuery表格(table)操作技巧匯總》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery常見經(jīng)典特效匯總》及《jquery選擇器用法總結(jié)》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
相關(guān)文章
JQuery中兩個(gè)ul標(biāo)簽的li互相移動(dòng)實(shí)現(xiàn)方法
這篇文章主要介紹了JQuery中兩個(gè)ul標(biāo)簽的li互相移動(dòng)實(shí)現(xiàn)方法,可實(shí)現(xiàn)ul標(biāo)簽中l(wèi)i標(biāo)簽內(nèi)容相互替換的技巧,涉及jQuery操作頁面元素的相關(guān)技巧,需要的朋友可以參考下2015-05-05
jQuery Tags Input Plugin(添加/刪除標(biāo)簽插件)詳解
本文主要介紹jQuery Tags Input Plugin添加/刪除標(biāo)簽插件的用法,非常實(shí)用,有需要的朋友可以參考一下。2016-06-06
Jquery+ajax請(qǐng)求data顯示在GridView上(asp.net)
Jquery ajax請(qǐng)求data顯示在asp.net中GridView控件上,需要的朋友可以參考下。2010-08-08
jQuery實(shí)現(xiàn)簡(jiǎn)單彈出框效果實(shí)例
這篇文章主要給大家介紹了關(guān)于jQuery實(shí)現(xiàn)簡(jiǎn)單彈出框效果的相關(guān)資料,幾天一直在研究JQuery,確實(shí)很好用,有很多需求都是要彈出框,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-06-06
jQuery插件form-validation-engine正則表達(dá)式操作示例
這篇文章主要介紹了jQuery插件form-validation-engine正則表達(dá)式操作,結(jié)合實(shí)例形式分析了jQuery插件form-validation-engine進(jìn)行正則驗(yàn)證操作的相關(guān)技巧,需要的朋友可以參考下2017-02-02
jquery無限級(jí)聯(lián)下拉菜單簡(jiǎn)單實(shí)例演示
這篇文章主要向大家推薦了一個(gè)jquery無限級(jí)聯(lián)下拉菜單簡(jiǎn)單實(shí)例演示,感興趣的小伙伴們可以參考一下2015-11-11
jQuery插件實(shí)現(xiàn)靜態(tài)HTML驗(yàn)證碼校驗(yàn)
這篇文章主要介紹了jQuery插件實(shí)現(xiàn)靜態(tài)HTML驗(yàn)證碼校驗(yàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-11-11
jquery.artwl.thickbox.js 一個(gè)非常簡(jiǎn)單好用的jQuery彈出層插件
jquery.artwl.thickbox.js 一個(gè)非常簡(jiǎn)單好用的jQuery彈出層插件,需要的朋友可以參考下2012-03-03
jQuery+HTML5美女瀑布流布局實(shí)現(xiàn)方法
這篇文章主要介紹了jQuery+HTML5美女瀑布流布局實(shí)現(xiàn)方法,涉及jQuery結(jié)合HTML5實(shí)現(xiàn)瀑布流效果的動(dòng)態(tài)加載功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09

