一個(gè)簡單的js漸顯(fadeIn)漸隱(fadeOut)類
更新時(shí)間:2010年06月19日 17:20:30 作者:
最近發(fā)現(xiàn)項(xiàng)目用的表單驗(yàn)證不好使,干脆一邊參考人家的一邊自己寫了一個(gè)。在驗(yàn)證有錯(cuò)誤返回提示信息用到漸顯(fadeIn)漸隱(fadeOut)過渡(因?yàn)闉g覽器的效率實(shí)在太高了,一下就蹦了出來~~);
要兼容IE(element.style.filter = 'alpha(opacity=value)')和非IE(element.style.opacity=value)就可以了。
另,還要注意,非IEopaciy的值是0~1之間,IE是1-100。
/**
* @projectDescription 動(dòng)畫(漸顯、漸隱)類
* /**
* @projectDescription KINGKIT UI
* @date 2010-6-1
* @author Kit.Liao
* @copyright kingkit.com.cn
* @version 0.9.0
* @感謝:http://www.cnblogs.com/rubylouvre/archive/2009/09/16/1566699.html
* 使用示例:漸顯:KUI.Animation.fadeIn(el);漸隱:KUI.Animation.fadeOut(el)
*/
KUI.Animation = {
fadeIn: function(id){
this.fade(id, true);
},
fadeOut: function(id){
this.fade(id, false);
},
fade: function(id, flag){
var target = KUI.get(id);
target.alpha = flag?1:100;
target.style.opacity = (target.alpha / 100);
target.style.filter = 'alpha(opacity=' + target.alpha + ')';
var value = target.alpha;
(function(){
target.style.opacity = (value / 100);
target.style.filter = 'alpha(opacity=' + value + ')';
if (flag) {
value++;
if (value <= 100) {
setTimeout(arguments.callee, 15);//繼續(xù)調(diào)用本身
}
}
else {
value--;
if (value >= 0) {
setTimeout(arguments.callee, 15);//繼續(xù)調(diào)用本身
}
}
})();
}
}
打包下載
另,還要注意,非IEopaciy的值是0~1之間,IE是1-100。


下面,貼代碼:
復(fù)制代碼 代碼如下:
/**
* @projectDescription 動(dòng)畫(漸顯、漸隱)類
* /**
* @projectDescription KINGKIT UI
* @date 2010-6-1
* @author Kit.Liao
* @copyright kingkit.com.cn
* @version 0.9.0
* @感謝:http://www.cnblogs.com/rubylouvre/archive/2009/09/16/1566699.html
* 使用示例:漸顯:KUI.Animation.fadeIn(el);漸隱:KUI.Animation.fadeOut(el)
*/
KUI.Animation = {
fadeIn: function(id){
this.fade(id, true);
},
fadeOut: function(id){
this.fade(id, false);
},
fade: function(id, flag){
var target = KUI.get(id);
target.alpha = flag?1:100;
target.style.opacity = (target.alpha / 100);
target.style.filter = 'alpha(opacity=' + target.alpha + ')';
var value = target.alpha;
(function(){
target.style.opacity = (value / 100);
target.style.filter = 'alpha(opacity=' + value + ')';
if (flag) {
value++;
if (value <= 100) {
setTimeout(arguments.callee, 15);//繼續(xù)調(diào)用本身
}
}
else {
value--;
if (value >= 0) {
setTimeout(arguments.callee, 15);//繼續(xù)調(diào)用本身
}
}
})();
}
}
打包下載
相關(guān)文章
JS實(shí)現(xiàn)自動(dòng)切換文字的導(dǎo)航效果代碼
這篇文章主要介紹了JS實(shí)現(xiàn)自動(dòng)切換文字的導(dǎo)航效果代碼,涉及javascript動(dòng)態(tài)切換頁面樣式的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
javascript的tab切換原理與效果實(shí)現(xiàn)方法
這篇文章主要介紹了javascript的tab切換原理與效果實(shí)現(xiàn)方法,實(shí)例分析了簡單的tab切換實(shí)現(xiàn)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-01-01
javascript實(shí)現(xiàn)數(shù)組內(nèi)值索引隨機(jī)化及創(chuàng)建隨機(jī)數(shù)組的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)數(shù)組內(nèi)值索引隨機(jī)化及創(chuàng)建隨機(jī)數(shù)組的方法,涉及javascript數(shù)組索引及隨機(jī)數(shù)的相關(guān)實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
前端調(diào)用后端接口時(shí)的超時(shí)問題解決辦法
這篇文章主要給大家介紹了關(guān)于如何解決前端調(diào)用后端接口時(shí)的超時(shí)問題,還詳細(xì)介紹了在Vue項(xiàng)目中配置axios的全局超時(shí)時(shí)間、使用遞歸和Promise.race()處理異步請(qǐng)求超時(shí)的最佳實(shí)踐,需要的朋友可以參考下2024-12-12
js實(shí)現(xiàn)正則匹配中文標(biāo)點(diǎn)符號(hào)的方法
這篇文章主要介紹了js實(shí)現(xiàn)正則匹配中文標(biāo)點(diǎn)符號(hào)的方法,涉及JavaScript正則匹配與判定的簡單使用技巧,需要的朋友可以參考下2015-12-12
javascript 通用簡單的table選項(xiàng)卡實(shí)現(xiàn)
鑒于UI妹妹每次交付過來的選項(xiàng)卡都夾帶了多多少少的js,而且每遇到選項(xiàng)卡就加一點(diǎn)js,造成垃圾低劣代碼逐漸堆積過多了,一直想做一個(gè)通用簡潔的選項(xiàng)卡庫。2010-05-05
小程序接口的promise化的實(shí)現(xiàn)方法
這篇文章主要介紹了小程序接口的promise化的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12

