用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心WEB研发

菜鸟跟我学缓冲效果

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-20 09:16:03

首先我要说的是,我是菜鸟,这些文章是献给和我一样想要学习的菜鸟们.
论坛里有几位朋友发过缓冲效果,但是象我这种菜鸟看他们的代码实在是一种痛苦,因为不是一个层次的.
所以我用最最冗余的代码来写出这种效果,目的就是希望菜鸟们能看懂,
当我们不菜的时候我们再回头去看高手们的东西.
最后,请相信这句话:
有一天菜鸟也会成为高手,(前提是你要努力哈哈^^)

运行代码框

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

关键代码请看这两个就可以了

function f_s(){
    var obj=document.getElementById("box");//获取ID为box的对象
    obj.style.display="block";//设置对象obj为显示
    obj.style.width="1px";    //设置对象obj的宽度为1px
    var changeW=function(){ //(关于函数这一点,什么闭包,什么类、原型的,弄的我头大了,以后慢慢理解吧。这里我理解的是创建一个函数直接量并把它存进变量changeW里)
        var obj_w=parseInt(obj.style.width);//把对象的宽度转换为一个数值,并存入变量obj_w中;
        if(obj_w<600){ //判断,如果宽度数值小于600
            obj.style.width=(obj_w+Math.ceil((600-obj_w)/15))+"px";//计算对象的宽度。。。随着宽度的变长,递增量越来越小
        }
        else{
        clearInterval(bw);//如果大于等于600的话,不再执行setInterval,意思就是这个时候停止增加宽度了。
        }
    }   
    var bw=window.setInterval(changeW,1)//每0.001秒调用一次changeW
}

//slow to fast 由慢到快
//声明一个函数s_f()
function s_f(){
    var obj=document.getElementById("box2");   
    var e_add=1;//初始化递增量
    obj.style.display="block";
    obj.style.width="1px";
    var changeW=function(){//我理解的是创建一个函数直接量并把它存进变量changeW里
        var obj_w;e_add
        obj_w=parseInt(obj.style.width);
        e_add*=1.05;//以后每次递增的值都是
        if(obj_w<600){
            obj.style.width=(obj_w+e_add)+"px";//随着宽度的变长,递增量越来越大
        }
        else{
        clearInterval(bw);
        obj.style.width="600px";//因为(obj_w+e_add)这种计算方法会超出预定义的宽度,所以这里在缓冲完以后重新设置它的宽度.造成一种假象哈哈
        }   
    }       
    var bw=window.setInterval(changeW,1)
}

经典论坛交流
http://bbs.blueidea.com/thread-2883594-1-1.html

本文链接:http://www.blueidea.com/tech/web/2009/6523.asp 

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

相关文章

PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:1,953.12500 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号