zoukankan      html  css  js  c++  java
  • 文章自动排版javascript程序

    不带图片的文章排版程序.很容易看明白,就不多说了.

    LayOut函数是我写的.LTrim,RTrim,Trim是在网上找的基础上稍微改动了一点.

    <script language="Javascript">

    /*
    ==================================================================
    LayOut(TextboxID):对Textbox里面的内容进行自动排版:段与段之间自动空
    行;段前缩进2个大空格;去除段前段后多余的空格.
    ==================================================================
    */

    function LayOut(TextboxID)
    {
        var newLineChar
    ="\r\n";
        var segHead
    ="    ";
        var text 
    = document.getElementById(TextboxID).innerText;
        var textContainer 
    = new Array();
        var ContainerArrayIndex 
    = 0;
        var startIndex
    =0;
        var endIndex
    =0;
        var textLength
    =text.length;
        var returnString
    ="";
        var isRubbish
    =true;
        var rubbish
    =new String(" \t \r\n");
        
        
    for(var count = 0; count < textLength; count++)
        {
            
    if(rubbish.indexOf(text.charAt(count))==-1) isRubbish=false;
            
            
    if(count==textLength-1&&isRubbish==false)
            {
                textContainer[ContainerArrayIndex]
    =Trim(text.substring(startIndex,textLength));
                ContainerArrayIndex
    ++;
            }
            
    else
            {
                
    if(text.substring(count,count+2)==newLineChar)
                {
                    endIndex
    =count+2;
                    
    if(endIndex-startIndex>2&&isRubbish==false)
                    {
                        textContainer[ContainerArrayIndex]
    =Trim(text.substring(startIndex,endIndex-2))+text.substring(endIndex-2,endIndex);
                        ContainerArrayIndex
    ++;
                    }
                    startIndex
    =endIndex;
                    count
    ++;
                    isRubbish
    =true;
                }
            }
        }
        
        
    for(var count = 0; count < ContainerArrayIndex; count++)
        {
            returnString
    +=segHead+textContainer[count]+newLineChar;
        }
        
        document.getElementById(TextboxID).innerText 
    = returnString;
    }

    /*
    ==================================================================
    LTrim(string):去除左边的空格
    ==================================================================
    */
    function LTrim(str)
    {
        var whitespace 
    = new String(" \t ");
        var s 
    = new String(str);
        
    if (whitespace.indexOf(s.charAt(0)) != -1)
        {
            var j
    =0, i = s.length;
            
    while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
            {
                j
    ++;
            }
            s 
    = s.substring(j, i);
        }
        
    return s;
    }

    /*
    ==================================================================
    RTrim(string):去除右边的空格
    ==================================================================
    */

    function RTrim(str)
    {
        var whitespace 
    = new String(" \t ");
        var s 
    = new String(str);
        
    if (whitespace.indexOf(s.charAt(s.length-1)) != -1)
        {
            var i 
    = s.length - 1;
            
    while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
            {
                i
    --;
            }
            s 
    = s.substring(0, i+1);
        }
        
    return s;
    }

    /*
    ==================================================================
    Trim(string):去除前后空格
    ==================================================================
    */

    function Trim(str)
    {
        
    return RTrim(LTrim(str));
    }

    </script>
    版权所有,欢迎转载
  • 相关阅读:
    chown
    chmod
    商务部
    使用 UEditor 编辑器获取数据库中的数据
    Java实现 蓝桥杯 算法提高 双十一抢购
    Java实现 蓝桥杯 算法提高 双十一抢购
    Java实现 蓝桥杯 算法提高 双十一抢购
    IDEA,PyCharm系列软件常用快捷键
    IDEA,PyCharm系列软件常用快捷键
    IDEA,PyCharm系列软件常用快捷键
  • 原文地址:https://www.cnblogs.com/xiaotie/p/213722.html
Copyright © 2011-2022 走看看