不知名的大神写的divs

<!DOCTYPE html>
<html>
<body>
    <span>目标宽度:</span><input id='id_width' type='input' value='300'/></br>
    <span>目标高度:</span><input id='id_height' type='input' value='300'/></br>
    <input id='id_BtnEnlarge' type='button' value='DIV尺寸渐变' style="margin-bottom:10px;"/>
    <div id='id_DivTest' style='width:100px;height:100px;background-color:red;overflow:hidden;border-radius: 150px;'></div>

    <script type="text/javascript">
        function enlargeDiv (size) {
            var div = document.getElementById('id_DivTest');
            var step = 2; //定义单次尺寸变化量
            
            //计算当前尺寸和目标尺寸的差
            var wDiff = size.width - parseInt(div.style.width);
            var hDiff = size.height - parseInt(div.style.height);

            //记录尺寸变化方向
            var wDirec = wDiff > 0 ? 1 : -1;
            var hDirec = hDiff > 0 ? 1 : -1;
            
            wDiff = Math.abs(wDiff);
            hDiff = Math.abs(hDiff);
            
            //计算本次尺寸变化量
            var wAdd, hAdd;
            
            if (wDiff == 0) {
                wAdd = 0;
                hAdd = step < hDiff ? step : hDiff;
            }
            else if (hDiff == 0) {
                hAdd = 0;
                wAdd = step < wDiff ? step : wDiff;
            }
            else if (wDiff > hDiff) {
                wAdd = step < wDiff ? step : wDiff;
                hAdd = Math.floor(wAdd*hDiff/wDiff);
    
                if(wAdd == wDiff) hAdd = hDiff;
            }
            else {
                hAdd = step < hDiff ? step : hDiff;
                wAdd = Math.floor(hAdd*wDiff/hDiff);
                
                if(hAdd == hDiff) wAdd = wDiff;    
            }
            
            div.style.width = parseInt(div.style.width) + wAdd*wDirec + "px";
            div.style.height = parseInt(div.style.height) + hAdd*hDirec + "px";
            
            if(wAdd == wDiff && hAdd == hDiff) div.enlargeTimer = clearInterval(div.enlargeTimer);
                
        }
    
        document.getElementById('id_BtnEnlarge').onclick = function() {
            var w = parseInt(document.getElementById('id_width').value);
            var h = parseInt(document.getElementById('id_height').value);
            
            if(w >= 0 && h >= 0) {
                var size = {width:w, height:h};
                var div = document.getElementById('id_DivTest');
                
                if(div.enlargeTimer) return; //防止重复点击产生多个渐变过程
                div.enlargeTimer = setInterval(function(){enlargeDiv(size);}, 20);
            }
            
        };
            
        
    </script>
</body>
</html> 
本人百度上找的不知哪位写的
下侧是本人写的滑动
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>div容器的滑出效果-jquery</title>
  
    <script type="text/javascript" src="Script/jquery-1.7.min.js" ></script>
    <style>
        *{margin: 0px;padding:0px;}
        /*为整体的容器*/
         #Nav{width: 300px;height: 300px;margin-top: 100px;border:1px solid red;}
        /*功能模块*/
        #Ner
        {
            width: 100px;
            height: 100px;
            background: red;
            position: relative;
            top:-100px;
        }
       

    </style>
    <script type="text/javascript">
        //默认显示
        var CheckBtnStart = true;
        function Show() {

            $("div").animate({
                top: "0px"
            });


        }
        function hiden() {
            $("div").animate({
                top: "-100px"
            });
        }
        function SAndH()  {
            if(CheckBtnStart){
                alert("显示");
                Show();
                CheckBtnStart = false;

            }else{
                  alert("隐藏");
                  hiden();
                  CheckBtnStart = true;}
            
        }
    </script>
</head>
<body>
    <input type="button" value="点我滑出" οnclick="Show();">
    <input type="button" value="点我隐藏" οnclick="hiden();">
    <input type="button" value="显示隐藏" οnclick="SAndH();" >
    <div id="Nav" >
        <div id="Ner" ></div>
    </div>
</body>
</html>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值