JavaScript 動畫方式設定元素尺寸和透明度
使用javascript設定元素的尺寸和透明度非常的簡單。
不過使用動畫方式實現就更加美觀和人性化一些,下面就分享一段程式碼例項,它實現了這樣的功能。
程式碼如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> body, div{ margin: 0; padding: 0; font-size: 12px; } table { border-collapse: collapse; border-spacing: 0; } ul { list-style: none; } .odiv { position: relative; } .odiv ul li { width: 200px; height: 100px; background: yellow; margin-bottom: 20px; border: 2px solid #000; } #li1 { opacity: 0.3; filter: alpha(opacity:30); } </style> <script language="javascript"> window.onload = function () { var li1 = document.getElementById('li1'); li1.onmouseover = function () { startMov(li1, 400, 'width', function () { startMov(li1, 200, 'height', function () { startMov(li1, 100, 'opacity'); }); }); }; li1.onmouseout = function () { startMov(li1, 30, 'opacity', function () { startMov(li1, 100, 'height', function () { startMov(li1, 100, 'width'); }); }); }; li1.timer = null; function startMov(obj, itarget, attr, fn) { clearInterval(obj.timer); obj.timer = setInterval(function () { var icur = 0; if (attr == 'opacity') { icur = Math.round(parseFloat(getStyle(obj, attr)) * 100); } else { icur = parseInt(getStyle(obj, attr)); } var speed = 0; speed = (itarget - icur) / 8; speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed); if (icur == itarget) { clearInterval(obj.timer); if (fn) { fn(); } } else { if (attr == 'opacity') { obj.style.filter = 'alpha(opacity:' + (icur + speed) + ')'; obj.style.opacity = (icur + speed) / 100; } else { obj.style[attr] = icur + speed + 'px'; } } }, 30); } function getStyle(obj, attr) { if (obj.currentStyle) { return obj.currentStyle[attr]; } else { return getComputedStyle(obj, false)[attr]; } } } </script> </head> <body> <div id="odiv" class="odiv"> <ul> <li id="li1"></li> </ul> </div> </body> </html>
相關文章
- jQuery動畫方式設定元素的透明度jQuery動畫
- 以動畫方式設定元素的透明度動畫
- jQuery以動畫方式設定元素的透明度jQuery動畫
- JavaScript設定元素透明度JavaScript
- javascript緩衝彈性方式設定元素的尺寸JavaScript
- JavaScript與CSS3動畫方式改變元素尺寸JavaScriptCSSS3動畫
- svg以動畫方式設定透明度SVG動畫
- JavaScript漸變方式設定透明度JavaScript
- JavaScript動畫方式改變元素寬度和高度JavaScript動畫
- CSS3動畫方式改變div元素的尺寸CSSS3動畫
- jQuery動畫方式設定div元素長和寬程式碼例項jQuery動畫
- css設定span元素的尺寸CSS
- 使用jquery設定元素的透明度jQuery
- JavaScript動畫方式控制div元素的隱藏和顯示JavaScript動畫
- javascript使用style方式設定元素的樣式JavaScript
- javascript實現的動態設定元素透明度程式碼例項JavaScript
- javascript相容所有瀏覽器設定元素透明度程式碼例項JavaScript瀏覽器
- 利用jquery設定div元素的透明度jQuery
- JavaScript獲取元素透明度JavaScript
- jQuery動態設定div元素的尺寸jQuery
- js移入和離開動畫方式改變透明度JS動畫
- javascript中獲取元素尺寸JavaScript
- CSS 動畫方式改變 div 尺寸CSS動畫
- 使用javascript設定圖片的透明度JavaScript
- 偽元素需要將其設定為塊級元素或者塊級內聯元素才能設定尺寸
- JavaScript元素動畫效果JavaScript動畫
- opacity設定元素透明度程式碼例項
- CSS3漸變方式設定透明度CSSS3
- javascript使用style方式如何設定和獲取元素的float浮動屬性JavaScript
- JavaScript 拖動調整元素尺寸JavaScript
- 設定display:none無法獲取元素的尺寸None
- js動態設定元素透明度程式碼例項JS
- 相容所有瀏覽器js設定元素透明度效果瀏覽器JS
- JavaScript拖動調整元素的尺寸JavaScript
- jquery動態設定元素的尺寸程式碼例項jQuery
- JavaScript設定元素float浮動JavaScript
- javascript實現的設定和獲取元素屬性JavaScript
- SVG 填充、描邊和透明度設定SVG