js 仿phptrim
function trims(){
this.init = function(myarguments){
if(arguments.length===0){return false;}
this.arg = myarguments;
this.len = this.arg.length;
if(this.len>0){ this.str = String(this.arg[0]); }
if(this.len>1){ this.thechar = this.arg[1]; }
if(typeof this.thechar=='undefined'){
this.rg_l = new RegExp("^(\\s|\\u00A0)+");
this.rg_r = new RegExp("\\S");
}else{
this.rg_l = new RegExp("^("+this.thechar+")+");
this.rg_r = new RegExp("[^"+this.thechar+"]{1}");
}
};
if (typeof trims._initialized == "undefined") {
trims.prototype.ltrim = function() {
this.str = this.str.replace(this.rg_l,'');
};
trims.prototype.rtrim = function() {
for(var i=this.str.length-1; i>=0; i--){
if(this.rg_r.test(this.str.charAt(i))){
this.str = this.str.substring(0, i+1);
break;
}
}
if(i===-1){this.str = '';}
};
trims._initialized = true;
}
};
var trimsobj = new trims();
function trim(){
trimsobj.init(arguments);
trimsobj.ltrim();
trimsobj.rtrim();
return trimsobj.str;
}
function rtrim(){
trimsobj.init(arguments);
trimsobj.rtrim();
return trimsobj.str;
}
function ltrim(){
trimsobj.init(arguments);
trimsobj.ltrim();
return trimsobj.str;
}
js 仿phptrim的更多相关文章
- js仿手机端九宫格登录功能
js仿手机端九宫格登录功能 最近闲来无事把以前无聊时开发的小东西拿出来和大家分享下,写的不好的请指出,我会及时修改.谢谢. 功能及方法逻辑都注释在代码中.所以麻烦大家直接看代码. 效果如下: 话不多说 ...
- JS仿淘宝详情页菜单条智能定位效果
类似于淘宝详情页菜单条智能定位 对于每个人来说并不陌生!如下截图所示:红色框的那部分! 基本原理: 是用JS侦听滚动事件,当页面的滚动距离(页面滚动的高度)大于或者等于 "对象"( ...
- 原生js仿jquery一些常用方法
原生js仿jquery一些常用方法 下面小编就为大家带来一篇原生js仿jquery一些常用方法(必看篇).小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 最近迷上了原 ...
- JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果
JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果 今天是2014年第一篇博客是关于类似于我们的qq空间长图片展示效果,因为一张很长的图片不可能全部把他展示出来,所以外层用了一个容器给他一个高度,超 ...
- JS 仿腾讯发表微博的效果
JS 仿腾讯发表微博的效果 最近2天研究了下 腾讯发表微博的效果 特此来分享下,效果如下: 在此分享前 来谈谈本人编写代码的习惯,很多人会问我既然用的是jquery框架 为什么写的组件不用Jquery ...
- js仿新浪游戏频道导航条
js仿新浪游戏频道导航条 在线演示本地下载
- JS 仿支付宝input文本输入框放大组件
input输入的时候可以在后边显示数字放大镜 <!doctype html> <html lang="en"> <head> <meta ...
- js仿百度文库文档上传页面的分类选择器_第二版
仿百度文库文档上传页面的多级联动分类选择器第二版,支持在一个页面同一时候使用多个分类选择器. 此版本号把HTML,CSS,以及图片都封装到"category.js"中.解决因文件路 ...
- js仿QQ拖拽删除
原生js实现仿QQ拖拽删除交互,无需任何依赖. 项目演示请看这里, gitHub请移步这里. 由于源码很长,所以贴到最下面了. 效果截图如下: 核心思想呢,就是点击圆点的时候全屏覆盖个canvas,在 ...
随机推荐
- 一些IT中的工具介绍【转】
1. 史上最全github使用方法:github入门到精通 2. Git教程 3. GIT与GitHub使用简介 简单来说,git是一种版本控制系统.跟svn.cvs是同级的概念.github是一 ...
- m=m++,结果让你大吃一惊。
如图,本来以为m=m++和m++是同一个效果,没想到m的值居然还是0. 原来m++是一个表达式,是有返回值的,它的返回值就是m自加前的值,Java对自加是这样处理的:首先把m的值(注意是值,不是引用) ...
- python简单爬虫示例
#coding=utf-8 import urllib import re def downloadPage(url): h = urllib.urlopen(url) ret ...
- Spark中容易遇到的问题
1. 序列化错误 所有需要传给RDD的变量都要实现java.io.Serializable接口.
- mvc3升级mvc4的方法记录.
手工升级ASP.NET MVC 3项目: 一.安装ASP.NET MVC 4 二.升级ASP.NET MVC版本配置信息: 1:替换项目 Web.config 中的 System.Web.Mvc, V ...
- easyui combobox级联(转载)
一.创建combobox 有如下几种方式可以创建一个combobox 1.使用select标签,并加上class="easyui-combobox",这种方式比较适用于静态的选项. ...
- 无法识别的属性“targetFramework”的解决方法
本文导读:网站发布后,在IIS中浏览的时候出现以下异常:无法识别的属性“targetFramework”,请注意属性名称区分大小写.出现这个问题是由IIS配置该站点的.NET Framework 版本 ...
- react 年-月-日 时:分:秒
// 时间let date = new Date();debugger;let seperator1 = "-";let seperator2 = ":";le ...
- 酶设计软件rosetta安装
1.Rosetta uses SCons as a compile assistant. You will likely need to download and install this first ...
- POJ - 1107 W's Cipher
POJ - 1107 W's Cipher Time Limit: 1000MS Memory Limit: 10000KB 64bit IO Format: %I64d & %I64u De ...