js动画方式改变div尺寸代码实例

快乐打工仔 分类:实例代码

分享一段代码实例,它实现了使用js动态改变div元素尺寸的功能。

代码实例如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.pipipi.net/" />
<title>前端教程网</title>
<style>
#antzone {
  height: 100px;
  width: 100px;
  background: #f00;
  position: absolute;
  top: 30px;
  left: 0;
}
</style>
<script>
window.onload=function(){
  var oDiv = document.getElementById("antzone")
  //封装getStyle函数
  function getStyle(obj, attr) {
    if (obj.currentStyle) {
      return obj.currentStyle;
    } else {
      return getComputedStyle(obj, false);
    }
  }
  //封装startMove函数
  function startMove(obj, json, fn) {
    clearInterval(obj.timer);
    obj.timer = setInterval(function () {
      var bTag = true;
      for (var attr in json) {
        if (attr == "opacity") {
          var iCur = getStyle(obj, attr) * 100;
        } else {
          var iCur = parseInt(getStyle(obj, attr));
        }
        var iSpeed = (json - iCur) / 8;
        iSpeed > 0 ? iSpeed = Math.ceil(iSpeed) : iSpeed = Math.floor(iSpeed);
        if (attr == "opacity") {
          obj.style.opacity = (iCur + iSpeed) / 100;
          obj.style.filter = "alpha(opacity=" + (iCur + iSpeed) + ")";
        } else {
          obj.style = iCur + iSpeed + "px";
        }
        if (iCur != json) {
          bTag = false;
        }
      }
      if (bTag == true) {
        clearInterval(obj.timer);
        if (fn) {
          fn();
        }
      }
    }, 30);
  }
 
  var btn = document.getElementById("btn");
  btn.onclick = function () {
    startMove(oDiv, { "height": 500 }, function () {
      startMove(oDiv, { "width": 500 })
    });
  }
}
  </script>
</head>
<body>
  <div id="antzone"></div>
  <button id="btn">查看演示</button>
</body>
</html>

js动画方式改变div尺寸代码实例,这样的场景在实际项目中还是用的比较多的,关于js动画方式改变div尺寸代码实例就介绍到这了。

js动画方式改变div尺寸代码实例属于前端实例代码,有关更多实例代码大家可以查看

回复

我来回复
  • 暂无回复内容