超实用js代码段一
1: 过滤首尾空格trim、2:过滤左边空格ltrim 3:过滤右边空格
一:用正则方法写成三个函数.
<script type="text/javascript">
function trim(str){ //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
}
function ltrim(str){ //删除左边的空格
return str.replace(/(^\s*)/g,"");
}
function rtrim(str){ //删除右边的空格
return str.replace(/(\s*$)/g,"");
}
</script>
二:获取鼠标在页面上的位置, 获取元素的绝对left和绝对right
var
_mousepos = {//鼠标在页面上的位置
"top":0,
"left":0
}, getMousePoint = function (_e) {
var _body = document.body,
_left = 0,
_top = 0
;
//浏览器支持 pageYOffset, 那么可以使用pageXOffset 和 pageYOffset 获取页面和视窗之间的距离
if(typeof window.pageYOffset != 'undefined') {
_left = window.pageXOffset;
_top = window.pageYOffset;
}
//如果浏览器指定了DOCTYPE并且支持compatMode
else if(typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') {
_left = document.documentElement.scrollLeft;
_top = document.documentElement.scrollTop;
}
else if(typeof _body != 'undefined') {//其他的如果浏览器支持document.body
_left = _body.scrollLeft;
_top = _body.scrollTop;
} _left += _e.clientX;
_top += _e.clientY;
_mousepos.left = _left;
_mousepos.top = _top; return _mousepos;
}, getAbsoluteLeft = function (_e){//获取元素的绝对left
var _left = _e.offsetLeft,
_current = _e.offsetParent;
while (_current !== null){
_left += _current.offsetLeft;
_current = _current.offsetParent;
}
return _left;
}, getAbsoluteTop = function (_e){//获取元素的绝对top
var _top = _e.offsetTop,
_current = _e.offsetParent;
while (_current !== null){
_top += _current.offsetTop;
_current = _current.offsetParent;
}
return _top;
},
3.获取日期的指定部分
/*获取日期的指定部分*/
var d =new Date(); //获取日期对象
console.log(d.getFullYear() + "年");//获取年
console.log((d.getMonth() + 1) + "月");//获取月函数默认是0~11 所以要+1
console.log(d.getDate() + "日");//获取日
console.log(d.getHours() + "时");//获取时
console.log(d.getMinutes() + "分");//获取分
console.log(d.getSeconds() + "秒");//获取秒
4.显示当前日期
//获取当前时间
function getNowTime(){
var date =new Date();//获取日期对象 /*获取年、月、日、时、分、秒,本地系统的时间*/
return date.getFullYear() + "年"
+ (date.getMonth() + 1) + "月"
+ date.getDate() + "日"
+ " "
+ date.getHours() + "时"
+ date.getMinutes() + "分"
+ date.getSeconds() + "秒";
}
//显示当前时间
document.getElementById("nowTime").innerHTML = "时间:" + getNowTime();
5.日期格式化成字符串
<body>
<h2>日期格式化成字符串</h2>
<p id='formatTime1'>格式化日期1:</p>
<p id='formatTime2'>格式化日期2:</p>
<p id='formatTime3'>格式化日期3:</p>
<script type="text/javascript">
window.onload = function(){
//日期格式化成字符串
function dateFormat(){
Date.prototype.format = function(f){
var date = {//获取对象中的日期
"Y" : this.getFullYear(),//获取年
"M" : (this.getMonth() + 1),//获取月
"D" : this.getDate(),//获取日
"h" : this.getHours(),//获取小时
"m" : this.getMinutes(),//获取分钟
"s" : this.getSeconds()//获取秒
},
d = "",//初始化接受日期变量的对象
r = false,//判断是否存在待替换的字符
reg = null,//正则
_d = "";//日期
; for(d in date){//过滤日期标示符
reg = new RegExp("[" + d + "]{1,}", "g");//判断是否有待格式化的字符
r = reg.test(f); if(r)//验证是否存在
{
_d = date[d];//被替换的日期
f = f.replace(reg, _d < 10 ? ("0" + _d) : _d);
}
} return f;
}
} var d =new Date();//获取日期对象 /*待格式化的日期为当前日期,
字符格式替换规则:“Y”被替换为年,“M”替换为,“D”替换为日期,“h”替换为小时,“m”替换为分钟,“s”替换为秒
* */
dateFormat();
document.getElementById("formatTime1").innerHTML = "格式化日期1:" + d.format("YYYY-MM-DD h:m:s");
document.getElementById("formatTime2").innerHTML = "格式化日期2:" + d.format("YYYY/MM/DD h-m-s");
document.getElementById("formatTime3").innerHTML = "格式化日期3:" + d.format("Y:M:D h:m:s");
};
</script>
</body>
超实用js代码段一的更多相关文章
- 超实用 JS 代码段笔记(一)
序1:30段简单代码段(有删减) 1 . 区分 IE 和 非 IE 浏览器 if(!+[1,]){ console.log('ie浏览器'); }else{ console.log('非ie浏览器') ...
- 我们为什么要看《超实用的Node.JS代码段》
不知道自己Node.JS水平如何?看这张图 如果一半以上的你都不会,必须看这本书,一线工程师用代码和功能页面来告诉你每一个技巧点. 都会一点,但不知道如何检验自己,看看本书提供的面试题: 1. ...
- 《超实用的Node.js代码段》连载三:Node.js深受欢迎的六大原因
<超实用的Node.js代码段>连载一:获取Buffer对象字节长度 <超实用的Node.js代码段>连载二:正确拼接Buffer Node.js是一种后起的优秀服务器编程语言 ...
- 实用的JS代码段(表单篇)
整理了下比较实用的Javascript代码段,完整的代码参考 1 多个window.onload方法 由于onload方法时在页面加载完成后,自动调用的.因此被广泛的使用,但是弊端是只能实用onloa ...
- 《超实用的Node.js代码段》连载二:正确拼接Buffer
对于初学Node.js框架的开发人员来说,可能认为Buffer模块比较易学.重要性也不是那么突出.其实,Buffer模块在文件I/O和网络I/O中应用非常广泛,其处理二进制的性能比普通字符串性能要高出 ...
- 《超实用的Node.js代码段》连载一:获取Buffer对象字节长度
我们知道Node.js框架下的Buffer对象能够对二进制数据提供很好的支持,那么获取一个Buffer对象真实的字节长度则是必须要用到的功能了.Node.js框架为开发人员提供了一个Buffer.by ...
- JS代码段:返回yyyy-mm-dd hh:mm:ss
最近做项目的时候正好用到,本着能抄就抄的心态去百度搜索现成的代码, 没想到抄下来的好几个都是错的,要么getMonth没有加1,要么10以下的数字前面没有加0, 我真是日了狗了,这次把写好的正确的直接 ...
- 验证表单的js代码段
JS常用功能 转载自:http://blog.csdn.net/kalision/article/details/12516103 引用js文件: <script src="js/d ...
- 实际项目中积累的一些关于事件的简单应用JS代码段(能力有限,不喜轻喷,23333)
1:鼠标移入移出显示另一张图片 var yuanquan_1 = document.getElementById("yuanquan_1" ); yuanquan_1. onmo ...
随机推荐
- jQuery插件使用大全
1.jQuery datepicker日历插件使用说明 http://wenku.baidu.com/view/12804e1e59eef8c75fbfb3e3 2.jqueryFileUpload插 ...
- 【个人】IIS Express 配置
<!-- 查看URL访问控制列表: netsh http show urlacl 添加URL访问控制: netsh http add urlacl url=http://myhostname:8 ...
- 【Qt】QWidget、QDialog、QMainWindow的异同点【转】
简述 在分享所有基础知识之前,很有必要在这里介绍下常用的窗口-QWidget.QDialog.QMainWindow. 熟悉Qt的同学都应该知道,在新建Qt Widgets项目进行类信息选择时会碰到它 ...
- c#获取今天星期几
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(DateTime.Now.DayOfWeek)
- Android SDK 更新失败
万恶的墙,调查兵团赶紧把墙拆了.大家一起跟巨人打一架. 解决方法是改hosts文件 添加 74.125.237.1 dl-ssl.google.com ok,good job 多亏了http://bl ...
- ASP.NET中的常用快捷键
想查找ASP.NET中的属性快捷键,忘记了,搜了一下,找到了ASP.NET中的常用快捷键. 大神文章:http://www.cnblogs.com/xiacao/archive/2012/06/12/ ...
- rtx信息泄漏利结合弱口令导致被批量社工思路
腾讯通RTX(Real Time eXchange)是腾讯公司推出的企业级实时通信平台. rtx server 存在暴露用户信息的漏洞,通过web访问 http://RtxServerIp:8012/ ...
- Python之回调魔法
Python中魔法(前后又下划线)会在对象的生命周期被回调. 借助这种回调, 可以实现AOP或者拦截器的思想. 在Python语言中提供了类似于C++的运算符重在功能:一下为Python运算符重在调用 ...
- 短小强悍的JavaScript异步调用库
对于博文 20行完成一个JavaScript模板引擎 的备受好评我感到很惊讶,并决定用此文章介绍使用我经常使用的另一个小巧实用的工具.我们知道,在浏览器中的 JavaScript 绝大部分的操作都是异 ...
- UIViewController没有随着设备一起旋转的原因
对于iPhone app,UIViewController类提供了基本的视图管理模式.当设备改变方向的时候view controller的视图会自动随之旋转的.如果视图和子视图的autoresizin ...