JavaScript类库

原创 2004年07月16日 16:32:00

JavaScriptWEB编程中能起到很大的作用,将一些常用的功能写成JavaScript类库。

将下面代码保存为Common.js

类库功能:

1.Trim(str)--去除字符串两边的空格

2.XMLEncode(str)--对字符串进行XML编码

3.ShowLabel(str,str)--鼠标提示功能(显示字符,提示字符)

可以设置显示的提示的文字的字体、颜色、大小以及提示的背景颜色、边框等

4.IsEmpty(obj)--验证输入框是否为空

5.IsInt(objStr,sign,zero)--验证是否为整数,正整数,负整数,以及是否包括零

6.IsFloat(objStr,sign,zero)--验证是否为浮点数,正浮点,负浮点,以及是否包括零

7.IsEnLetter(objStr,size)--验证是否为26个字母,大写小

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

源代码如下:

/*

       名字:Common.js

       功能:通用JavaScript脚本函数库

       包括:

                     1.Trim(str)--去除字符串两边的空格

                     2.XMLEncode(str)--对字符串进行XML编码

            3.ShowLabel(str,str)--鼠标提示功能(显示字符,提示字符)

                     4.IsEmpty(obj)--验证输入框是否为空

                     5.IsInt(objStr,sign,zero)--验证是否为整数

                     6.IsFloat(objStr,sign,zero)--验证是否为浮点数

                     7.IsEnLetter(objStr,size)--验证是否为26个字母

 

    作者:申旺

    日期:<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />2004/04/14

*/

 

/*

==================================================================

字符串操作

Trim(string):去除字符串两边的空格

==================================================================

*/

 

/*

==================================================================

LTrim(string):去除左边的空格

==================================================================

*/

function LTrim(str)

{

    var whitespace = new String(" /t/n/r");

    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/n/r");

    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));

}

 

 

 

/*

================================================================================

XMLEncode(string):对字符串进行XML编码

================================================================================

*/

function XMLEncode(str)

{

       str=Trim(str);

       str=str.replace("&","&");

       str=str.replace("<","<");

       str=str.replace(">",">");

       str=str.replace("'","&apos;");

       str=str.replace("/"",""");

       return str;

}

 

/*

================================================================================

验证类函数

================================================================================

*/

 

function IsEmpty(obj)

{

    obj=document.getElementsByName(obj).item(0);

    if(Trim(obj.value)=="")

    {

        alert("字段不能为空。");       

        if(obj.disabled==false && obj.readOnly==false)

        {

            obj.focus();

        }

    }

}

 

/*

IsInt(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)

功能:判断是否为整数、正整数、负整数、正整数+0、负整数+0

*/

function IsInt(objStr,sign,zero)

{

    var reg;   

    var bolzero;   

   

    if(Trim(objStr)=="")

    {

        return false;

    }

    else

    {

        objStr=objStr.toString();

    }   

   

    if((sign==null)||(Trim(sign)==""))

    {

        sign="+-";

    }

   

    if((zero==null)||(Trim(zero)==""))

    {

        bolzero=false;

    }

    else

    {

        zero=zero.toString();

        if(zero=="0")

        {

            bolzero=true;

        }

        else

        {

            alert("检查是否包含0参数,只可为(空、0)");

        }

    }

   

    switch(sign)

    {

        case "+-":

            //整数

            reg=/(^-?|^/+?)/d+$/;           

            break;

        case "+":

            if(!bolzero)          

            {

                //正整数

                reg=/^/+?[0-9]*[1-9][0-9]*$/;

            }

            else

            {

                //正整数+0

                //reg=/^/+?/d+$/;

                reg=/^/+?[0-9]*[0-9][0-9]*$/;

            }

            break;

        case "-":

            if(!bolzero)

            {

                //负整数

                reg=/^-[0-9]*[1-9][0-9]*$/;

            }

            else

            {

                //负整数+0

                //reg=/^-/d+$/;

                reg=/^-[0-9]*[0-9][0-9]*$/;

            }            

            break;

        default:

            alert("检查符号参数,只可为(空、+-)");

            return false;

            break;

    }

   

    var r=objStr.match(reg);

    if(r==null)

    {

        return false;

    }

    else

    {       

        return true;    

    }

}

 

/*

IsFloat(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)

功能:判断是否为浮点数、正浮点数、负浮点数、正浮点数+0、负浮点数+0

*/

function IsFloat(objStr,sign,zero)

{

    var reg;   

    var bolzero;   

   

    if(Trim(objStr)=="")

    {

        return false;

    }

    else

    {

        objStr=objStr.toString();

    }   

   

    if((sign==null)||(Trim(sign)==""))

    {

        sign="+-";

    }

   

    if((zero==null)||(Trim(zero)==""))

    {

        bolzero=false;

    }

    else

    {

        zero=zero.toString();

        if(zero=="0")

        {

            bolzero=true;

        }

        else

        {

            alert("检查是否包含0参数,只可为(空、0)");

        }

    }

   

    switch(sign)

    {

        case "+-":

            //浮点数

            reg=/^((-?|/+?)/d+)(/./d+)?$/;

            break;

        case "+":

            if(!bolzero)          

            {

                //正浮点数

                reg=/^/+?(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$/;

            }

            else

            {

                //正浮点数+0

                reg=/^/+?/d+(/./d+)?$/;

            }

            break;

        case "-":

            if(!bolzero)

            {

                //负浮点数

                reg=/^-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$/;

            }

            else

            {

                //负浮点数+0

                reg=/^((-/d+(/./d+)?)|(0+(/.0+)?))$/;

            }           

            break;

        default:

            alert("检查符号参数,只可为(空、+-)");

            return false;

            break;

    }

   

    var r=objStr.match(reg);

    if(r==null)

    {

        return false;

    }

    else

    {       

        return true;    

    }

}

 

LinkAddress: http://www.cnblogs.com/huqingyu/archive/2004/07/16/24792.aspx

 

禁止屏蔽类:
1.禁止右键
<body oncontextmenu=return(false)>
2.禁止选择
<body onselectstart="return false">
3.禁止粘贴
<body onpaste="return false">
4.禁止直接访问 [必须框架内才行]
<script>
if (top == self)top.location.href = "page.htm";
</script>
5.禁止frame引用
<script>
if (top != self)top.location.href = "page.htm";
</script>
6.禁止功能键Shift,Alt,Ctrl
<script>function key(){
if(event.shiftKey) alert("Shift不允许使用!");} document.onkeydown=key; </script>


数据取得类
1.取得分辨率
<script>document.write("宽为"+screen.Width+"高为"+screen.Height)</script>
2.取得地址栏
<script>document.write(self.location)</script>
3.取得地址栏?后参数
<SCRIPT>var add = top.location;
add = add.toString();
document.write (add.substring(add.indexOf("?")+1,add.length));
</SCRIPT>

丰富自己的javascript类库

每个优秀的开发者都会形成自己的类库,作为一个java开发者,我们也会写一大堆的工具类,用于简化我们的开发工作。但是作为一个全站攻城狮,不仅仅只是懂的形成java的类库,javascript的类库也同样...
  • u010469003
  • u010469003
  • 2016年06月18日 18:40
  • 2138

前端后端会用到的最齐全js类库

函数库 ExtJS,yul, jQuery jQuery UI 第一:https://developers.google.com/speed/libraries/devguide?...
  • kongjiea
  • kongjiea
  • 2014年04月02日 15:42
  • 3553

JavaScript 日期处理类库---Moment.js

IT知识汇 2016-10-18 11:02 我相信你在各大网站一定见过这样的时间戳展示: 如果你的网站或者博客也想要这样的效果肿么办?自己写?当然可以!可是我是一个又笨又懒的猿,我选...
  • u011277123
  • u011277123
  • 2016年10月19日 09:10
  • 282

原来定义JS类库这么简单

var JSMethod = {     getUrlParam: function (strname) {//从URL获取参数         var hrefstr, pos, parastr...
  • vincent_void
  • vincent_void
  • 2014年08月15日 16:55
  • 866

eclipse安装javascript插件

大部分人推荐使用:Spket,它是一个支持Ext库的非常棒的Eclipse Javascript插件。  在Eclipse的IDE下面安装Spket:  1、打开Eclipse,H...
  • SoulsCarrier
  • SoulsCarrier
  • 2015年03月15日 16:26
  • 974

JavaScript : 零基础打造自己的类库

前言 在之前的章节中,我们已经不依赖jQuery,单纯地用JavaScript封装了很多方法,这个时候,你一定会想,这些经常使用的方法能不能单独整理成一个js文件呢? 当然可以,封装本来就...
  • qiupu4667
  • qiupu4667
  • 2017年04月12日 20:41
  • 144

10款面向HTML5 画布(Canvas)的JavaScript库

Processing.js Processing.js是一个开放的编程语言,在不使用Flash或Java小程序的前提下,可以实现程序图像、动画和互动的应用。Processing.js是轻量,易于了解...
  • zhihui1017
  • zhihui1017
  • 2015年11月18日 14:54
  • 2837

知名Html5 Canvas Javascript库对比 (转)

知名Html5 Canvas Javascript库对比 声明: 原文链接:http://www.softr.li/blog/2012/06/20/which-html5-canv...
  • hicarl
  • hicarl
  • 2015年05月11日 13:46
  • 2112

JavaScript自定义“类”库

JavaScript 是基于原型的语言,在es6 之前并没有包含内置类的实现。但是这并不意味着类在JavaScript中毫无必要 。实际上类是一种很有用的工具,像其他编程语言中一样,类在JavaScr...
  • TuoHai_
  • TuoHai_
  • 2017年06月05日 19:38
  • 271

[Javascript] 对象的创建与类的封装

1.单个对象创建方法一 var stu = {}; stu.name = 'Luck'; stu.showName = function() { alert(this.name); } 2...
  • xiaohaoyao
  • xiaohaoyao
  • 2015年08月06日 12:03
  • 943
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaScript类库
举报原因:
原因补充:

(最多只允许输入30个字)