首頁  >  文章  >  web前端  >  JS實現透明度漸層功能

JS實現透明度漸層功能

php中世界最好的语言
php中世界最好的语言原創
2018-05-14 14:36:482576瀏覽

這次帶給大家JS實現透明度漸變功能,JS實現透明度漸變功能的注意事項有哪些,下面就是實戰案例,一起來看一下。

<!DOCTYPE html>
<html>
  <head>
  <meta charset="utf-8">
    <title>JS透明度变化效果</title>
    <style>
    body{
      margin: 0px;
      padding: 0px;
    }
    .redb{
      width:200px;
      height: 200px;
      background: red;
      filter:alpha(opacity=30);
      opacity: 0.3;
    }
    </style>
  </head>
  <body>
    <p class="redb" id="opbtn"></p>
    <script>
    window.onload = function(){
      var opp = document.getElementById("opbtn");
      opp.onmouseover = function(){
        startMove(100);
      }
      opp.onmouseout = function(){
        startMove(30);
      }
    }
    var timer = null;
    var alpha = 30;
    var speed = 0;
    function startMove(opTarget){
      clearInterval(timer);
      var opp = document.getElementById("opbtn");
      timer = setInterval(function(){
        if(alpha<opTarget){
          speed = 10;
        }
        else if(alpha>opTarget){
          speed = -10;
        }
        if(alpha==opTarget){
          clearInterval(timer);
        }
        else{
          alpha += speed;
          opp.style.opacity = alpha/100;
          opp.style.filter = 'alpha(opacity='+alpha+')';
        }
      },100);
    }
    </script>
  </body>
</html>

小結:

1、filter和opacity區別:w3c標準透明度就是opacity,filter只有IE才能用,其他瀏覽器都支援opacity
2 、改變透明度時候,不能透過類似offsetLeft的方法取得透明度值,因此需要單獨創建變數
3、不要忘記將計時器賦值給timer

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

建議閱讀:

Vue中watch使用方法總結

jQuery做出循環時間自動更換樣式功能

以上是JS實現透明度漸層功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn