当前位置:编程学习 > JAVA >>

javascript学习6——javascript面向对象(实战) 制作调试日志

 一般我们在javascript看效果的时候,往往会用alert函数。
          试想,如果我们想看一下document下有多少个对象,那么,我们要可能会写出这样的代码:
[javascript]  
for(i in document)  
        {  
        alert(i);  
        }  
 
          可是在document下有一百多个对象,那么我们要在浏览器中不停的单击一百多次才可以看全,为此, 我们来制作一个简单的日志调试,也是对我们前面学习知道的一个巩固。
          制作出来的效果图如下:
 
         调用页面:
[html]  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>无标题文档</title>  
<script type="text/javascript" src="LS.js"></script>  
<script type="text/javascript" src="Classs3实践myLog.js"></script>  
<script type="text/javascript" src="Classs3实践testjs.js"></script>  
</head>  
  
<body>  
<span style="color:#3F0; background-color:#FFF; font-weight:bold; padding:0px 5px;">这是标题</span>  
</body>  
</html>  
       Classs3实践myLog.js
[javascript]  
function mylogger(id){  
        //给id是为了识别日志窗口,如果不给的话,那么默认是LSLogWindow  
        id=id||'LSLogWindow';  
        var logWindow=null;  
        //创建日志窗体  
        var createWindow=function(){  
                var browserWindowSize=LS.getBrowserWindowSize();  
                //如果browserWindowSize为空的话,或者没有取到,为了保证安全性,我们给它||一个0  
                //这样的话,就算前面为空的话,top也会等于0,不至于报错。  
                var top=(browserWindowSize.height-200)/2 || 0;  
                var left=(browserWindowSize.width-200)/2 || 0;  
                  
                //使用UL  
                //我们在document下添加UL这样一个DOM对象,并且把这个DOM对象的引用赋给logWindow对象。  
                logWindow=document.createElement('UL');  
                //添加ID进行标识  
                logWindow.setAttribute('id',id);  
                //对窗体进行CSS控制  
                logWindow.style.position='absolute';  
                logWindow.style.top=top+'px';  
                logWindow.style.left=left+'px';  
                  
                logWindow.style.width='200px';  
                logWindow.style.height='200px';  
                logWindow.style.overflow='scroll';  
                  
                logWindow.style.padding='0';  
                logWindow.style.margin='0';  
                logWindow.style.border='1px solid black';  
                logWindow.style.backgroundColor='white';  
                logWindow.style.listsStyle='none';  
                logWindow.style.font='10px verdana,Tahoma,Sans';  
                  
                document.body.appendChild(logWindow);  
                  
            };  
        //向日志窗体中添加一行  
        this.writeRow=function(message){  
                //如果初始窗体是不存在的,则生成日志窗体。  
                if(!logWindow)  
                {  
                    //这里可不要加this哦,因为如果这里加this的话,那么this表示调用当前方法writeRow的一个实例  
                    //也就是myLogger,而createWindow是一个私有属性,所以肯定会报错。  
                    createWindow();               
                    }  
                //创建li的DOM结点  
                var li=document.createElement('li');  
                //进行CSS样式控制  
                li.style.padding='2px';  
                li.style.border='0px';  
                li.style.borderBottom='1px dotted black';  
                li.style.margin='0';  
                li.style.color='#000';  
                  
                if(typeof message=='undefined')  
                {  
                    li.appendChild(document.createTextNode('Message is undefi
补充:web前端 , JavaScript ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,