超实用js代码段一

时间:2023-03-09 21:14:25
超实用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>