超实用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>