JavaScript淡入淡出效果
使用jQuery可以輕鬆的實現div的淡入淡出效果,因為有已經封裝好的函式直接呼叫,使用JavaScript實現就沒有那麼簡單了,下面通過一個例項程式碼來分析一下如何實現此效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>div淡入淡出效果-螞蟻部落</title> <style type="text/css"> * { margin:0px; padding:0px; } #box { width:480px; height:270px; position:absolute; left:50%; top:50%; margin-left:-240px; margin-top:-135px; background-color:#333; } </style> <script type="text/javascript"> function func(o){ i=1; s=0.01; setInterval(function(){ i+=s; s = i < 0 ? 0.01 : (i > 1 ? -0.01 : s); if(o.filters){ o.filters[0].opacity=i*100; } else{ o.style.opacity=i; } },1) } window.onload=function(){ var odiv=document.getElementById("box"); func(odiv); } </script> </head> <body> <div id="box"></div> </body> </html>
以上程式碼整合了div的淡入淡出效果,下面就簡單介紹一下此效果的實現過程:
一.實現原理:通過使用定時器函式setInterval(),不斷的設定div的透明度,從不透明設定為透明,這樣就完成了淡出效果,從透明設定為不透明,這樣就實現了淡入效果。需要特別注意瀏覽器相容性問題。
二.程式碼註釋:
1.function func(o){},宣告一個函式,引數是一個物件。
2.i=1;s=0.01;宣告變數i和s,分別賦值為1和0.01。
3.setInterval()使用定時器函式每隔10毫秒執行一次函式。
3.1.i+=s等同於i=i+s。
3.2.s=i<0?0.01 : (i>1?-0.01:s),這裡其實是一個三元運算子巢狀功能,用於在i大於1、i大於0小於1和i小於0三種情況下給s賦值。
3.3.if(o.filters),判斷是否支援filters集合,用來相容IE瀏覽器。
3.4.o.filters[0].opacity=i*100;給IE瀏覽器下的物件o設定透明度。
3.5.o.style.opacity=i;,給其他標準瀏覽器下的物件o設定透明度。3.6
4.window.onload=function(){},當文件內容完全載入完成時,再去執行函式中的程式碼。
5.var odiv=document.getElementById("box");獲取id為box的物件。
6.func(odiv);執行函式func(),引數為odiv物件。
相關文章
- javascript淡入淡出效果程式碼例項JavaScript
- jQuery 效果 – 淡入淡出jQuery
- javascript實現的淡入淡出效果程式碼例項JavaScript
- javascript原生封裝一個淡入淡出效果的函式JavaScript封裝函式
- jQuery 04 效果 淡入淡出jQuery
- jquery中淡入淡出效果案例jQuery
- jQuery 實現淡入淡出效果jQuery
- 實現元素的淡入淡出效果
- js淡入淡出效果例項程式碼JS
- jQuery 淡入淡出效果下拉導航選單jQuery
- 淡入淡出效果簡單程式碼例項
- div的淡入淡出效果程式碼例項
- jQuery實現的元素淡入淡出動畫效果jQuery動畫
- js圖片淡入淡出效果程式碼例項JS
- win10淡入淡出效果怎麼關 win10怎麼取消視窗淡入淡出Win10
- 利用API函式實現影像淡入淡出效果 (轉)API函式
- 滑鼠滑過實現淡入淡出效果程式碼例項
- ExtJS簡單的動畫效果(extjs淡入淡出特效)JS動畫特效
- CSS3滑鼠懸浮和移開div淡入淡出效果CSSS3
- 具有淡入淡出效果的下拉導航選單例項程式碼單例
- JavaScript拖拽效果JavaScript
- CSS 淡入淡出CSS
- JavaScript 秒錶效果JavaScript
- JavaScript抖動效果JavaScript
- JavaScript元素動畫效果JavaScript動畫
- javascript瀑布流效果JavaScript
- iOS專案開發實戰——使用CALayer實現圖片的淡入淡出效果iOS
- JavaScript 省市級聯效果JavaScript
- JavaScript 簡單動畫效果JavaScript動畫
- JavaScript元素抖動效果JavaScript
- JavaScript 動畫效果例項JavaScript動畫
- JavaScript計時器效果JavaScript
- JavaScript隔行變色效果JavaScript
- Javascript實現動畫效果JavaScript動畫
- JavaScript 頁面跳轉效果JavaScript
- JavaScript 表格隔行變色效果JavaScript
- JavaScript 視窗抖動效果JavaScript
- JavaScript 圖片放大鏡效果JavaScript