随心芸芸 @ JPeanut(旧版)

搬迁至 http://www.17m.net.cn/

BlogJava 首页 新随笔 联系 聚合 管理
  43 Posts :: 0 Stories :: 54 Comments :: 0 Trackbacks
陈市明 摘自:http://www.blogjava.net/JPeanut

呵呵,无意中翻到2年前写的一段JS,感觉还是比较有用
好早的代码了,那个时候我还喜欢用YoungSnow的名字呢


<script>


    var loadbar 
= new Ys_LoadBar(4000,"请稍后,系统正在处理……<br><预计进度显示>","合同数据保存中……");
    loadbar.loadExecute();

    
/**
     *  作者: YoungSnow
     *  作用:显示load bar ,禁止左右表单输入
     *  用法:
     *    var loarbar = new Ys_LoadBar(4000,"请稍后,系统正在处理……<br><预计进度显示>","合同数据保存中……");
     *    loarbar.loadExecute();
     *  param:
     *   totalTime:进度条的时间
     *   strTip:上面的提示字符
     *   strWait:进度条结束后下面跳动的字符
     *  public function:
     *   loadExecute()
     
*/

    function Ys_LoadBar(totalTime,strTip,strWait)
{
        
//private properties
        var loadTotalTime = 0;     //进度条的时间
        var loadMaxChar = 0;       //进度条的字符数目
        var loadPerTimeChar = 0;   //setTimeOut's interval          
        var loadstrTip = 0;        //上面的提示字符
        var loadstrWait = 0;       //进度条结束后下面跳动的字符
        
        
this.loadTotalTime = totalTime;                
        
this.loadstrTip = strTip;
        
this.loadstrWait = strWait;
        
        
//private funcitons
        this.loadInit = loadInit;
        
this.loadExecute = loadExecute;
        
this.loadWork = loadWork;
        
this.loadStop = loadStop;
        
this.loadWaitChange = loadWaitChange;
        
this.loadDisplayDiv = loadDisplayDiv;
        
this.loadDisabledAllForm = loadDisabledAllForm;

        
//进行一些必要的初始化
        this.loadInit();    
    }


    
/**
     *  开始运行
     
*/

    function loadExecute()
{
        loadFrame.style.visibility 
= "visible";
        
this.loadWork();    
    }


    
/**
     *  初始化
     
*/

    function loadInit()
{
        
this.loadDisplayDiv(); 
        
this.loadMaxChar = 100;                                    
        
this.loadPerTimeChar = this.loadTotalTime/this.loadMaxChar;  
        
this.loadDisabledAllForm();
    }


    
/**
     *  进度条显示
     
*/

    function loadWork()
{
        loadBar.value 
+= "";
        loadNum.value 
= (parseInt(loadNum.value.replace("%",""))+1)+"%";
        
if(parseInt(loadNum.value)>99){
            loadStop();
            
return ;
        }

        setTimeout(
"this.loadWork()",this.loadPerTimeChar);
    }


    
/**
     *  进度条停止
     
*/

    function loadStop()
{
        loadNum.style.display 
= "none";
        loadWaitChange();
    }


    
/**
     *  字幕跳动
     
*/

    function loadWaitChange()
{
        
if(loadWait.style.visibility=="visible")
            loadWait.style.visibility 
= "hidden";
        
else
            loadWait.style.visibility 
= "visible";
        setTimeout(
"this.loadWaitChange()",300);
    }


    
/**
     *  显示div图层
     
*/

    function loadDisplayDiv()
{
        document.write(
"<div id='loadFrame' style='position:absolute; left:20;bottom:330;  z-index:10; visibility:hidden'>");
        document.write(
"    <table width=100% border=0 cellspacing=0 cellpadding=0>");
        document.write(
"    <tr>");
        document.write(
"    <td align='center'>");
        document.write(
"        <table border=2 cellspacing=0 cellpadding=0 bordercolor='#ff9900' width='400' height=151>");
        document.write(
"        <tr>");
        document.write(
"        <td>");
        document.write(
"            <table border=0 width='100%' bgcolor=#eeeeee  height=150>");
        document.write(
"                <tr>");
        document.write(
"                    <td height='3'></td>");
        document.write(
"                </tr>");
        document.write(
"                <tr>");
        document.write(
"                    <td align='center'><font style='font-size: 12px; margin-top:0px;color:#66CC33'>"+this.loadstrTip+"</font></td>");
        document.write(
"                </tr>");
        document.write(
"                <tr>");
        document.write(
"                    <td height='3'></td>");
        document.write(
"                </tr>");
        document.write(
"                <tr>");
        document.write(
"                    <td align='left'><input type='text' name='loadBar' size='200' style='border:none;background-color:#eeeeee;font-size:4px'>");
        document.write(
"                </tr>");
        document.write(
"                <tr>");
        document.write(
"                    <td align='center'>");
        document.write(
"                        &nbsp;<input type='text' name='loadNum' size=3 value='0%' style='border:none;background-color:#eeeeee'>&nbsp");
        document.write(
"                        &nbsp;<div id='loadWait' style='visibility:hidden'>&nbsp;<font style='font-size: 12px; margin-top:0px;color:#66CC33'>&nbsp;"+this.loadstrWait+"&nbsp;</font></div>&nbsp;");
        document.write(
"                    </td>");
        document.write(
"                </tr>");
        document.write(
"                <tr>");
        document.write(
"                    <td height='3'></td>");
        document.write(
"                </tr>");
        document.write(
"            </table>");
        document.write(
"        </td>");
        document.write(
"        </tr>");
        document.write(
"        </table>");
        document.write(
"    </td>");
        document.write(
"    </tr>");
        document.write(
"    </table>");
        document.write(
"</div>");
    }


    
/**
     *  禁止所有表单
     
*/

    function loadDisabledAllForm()
{
        
for(i=0;i<document.forms.length;i++){        
            
for(j=0;j<document.forms[i].length;j++){
                document.forms[i].elements[j].disabled 
= true;
            }

        }

    }

</script>
posted on 2006-11-17 09:06 陈市明 阅读(3116) 评论(1)  编辑  收藏 所属分类: 软件开发

Feedback

# re: JS的进度条 2012-10-29 10:08 gfdg
dfgd  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: