工作中用到的, 不断做为积累, 以后能用到. 也感谢前辈们.
定义Util对象
var MyUtil = new Object();
从url中获取参数
//从url中获取参数 function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(name == 'qu_name'){ if(r!=null)return decodeURI(r[2]); return null; }else{ if(r!=null)return unescape(r[2]); return null; } }
生成32位随机数
// 生成32位随机数 function randomString() { /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/ var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; var maxPos = $chars.length; var pwd = ''; for (var i = 0; i < 32; i++) { pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); } return pwd; }
隐藏DIV
MyUtil.hideDiv = function(div) { div.css("display", "none"); };
弹出div显示层
/** * 弹出div显示层 * * @param {} * div 需要显示的div元素 * @param {} * content div中显示的内容 * @param {} * left 左偏移量 * @param {} * top 顶部偏移量 * @param {} * width div宽度 * @param {} * height div高度 */ MyUtil.showDiv = function(div, content, left, top, width, height) { div.empty(); div.append(content); HuaDun.setPosition(div, left, top); if (typeof width != 'undefined' && (width != null || width != "")) { div.css("width", width + "px"); } if (typeof height != 'undefined' && (height != null || height != "")) { div.css("height", height + "px"); } div.css("display", "block"); };
设置弹出div位置
/** * 设置弹出div位置 * * @param {} * div 需要显示的div元素 * @param {} * x 左偏移量 * @param {} * y 顶部偏移量 */ MyUtil.setPosition = function(div, x, y) { var top = document.body.scrollTop || document.documentElement.scrollTop; var left = document.body.scrollLeft || document.documentElement.scrollLeft; x += left; y += top; var l = x + 20;// 左偏移量 var t = y - (div.height() - 20); // 顶部偏移量 var bRight = true; var iPageRight = left + document.documentElement.clientWidth;// 页面的右边界 if (l + div.width() > iPageRight) { bRight = false; l = x - (div.width() + 20); } div.css("left", l + 'px'); div.css("top", t + 'px'); }
时间工具类
/** * 时间类工具 */ var MyDate= new Object(); // 获取当前时间 MyDate.GetNow = function() { var now = new Date(); var year = now.getFullYear(); var month = now.getMonth() + 1; var day = now.getDate(); var hh = now.getHours(); // 获取当前小时数(0-23) var mm = now.getMinutes(); // 获取当前分钟数(0-59) var ss = now.getSeconds(); var clock = year + "-"; if (month < 10) clock += "0"; clock += month + "-"; if (day < 10) clock += "0"; clock += day; var h = parseInt(hh); if (h < 10) { h = "0" + h; } clock += " " + h; var m = parseInt(mm); if (m < 10) { m = "0" + m; } clock += ":" + m; var s = parseInt(ss); if (s < 10) { s = "0" + s; } clock += ":" + s; return (clock); }; // 获取当天日期 MyDate.GetToday = function() { var now = new Date(); var year = now.getFullYear(); // 年 var month = now.getMonth() + 1; // 月 var day = now.getDate(); // 日 var clock = year + "-"; if (month < 10) clock += "0"; clock += month + "-"; if (day < 10) clock += "0"; clock += day; return (clock); }; // 获取昨天日期 MyDate.GetYesterday = function() { var date = new Date(); var yesterday_milliseconds = date.getTime() - 1000 * 60 * 60 * 24; var yesterday = new Date(); yesterday.setTime(yesterday_milliseconds); var strYear = yesterday.getFullYear(); var strDay = yesterday.getDate(); if(strDay < 10){ strDay = "0"+strDay; } var strMonth = yesterday.getMonth() + 1; if (strMonth < 10) { strMonth = "0" + strMonth; } datastr = strYear + "-" + strMonth + "-" + strDay; return datastr; }; // 获取明天日期 MyDate.GetTomorrow = function() { var date = new Date(); var Tomorrow_milliseconds = date.getTime() + 1000 * 60 * 60 * 24; var Tomorrow = new Date(); Tomorrow.setTime(Tomorrow_milliseconds); var strYear = Tomorrow.getFullYear(); var strDay = Tomorrow.getDate(); if(strDay < 10){ strDay = "0"+strDay; } var strMonth = Tomorrow.getMonth() + 1; if (strMonth < 10) { strMonth = "0" + strMonth; } datastr = strYear + "-" + strMonth + "-" + strDay; return datastr; }; // 获取当前年 MyDate.GetYear = function() { var y = new Date(); var year = y.getFullYear(); return year; }; // 获取当前月 MyDate.GetMonth = function() { var m = new Date(); var year = m.getFullYear(); var month = m.getMonth() + 1; if (month < 10) { month = "0" + month; } return year + "-" + month; }; // 获取上个月 MyDate.GetLastMonth = function() { var tomonth = new Date(); var year = tomonth.getFullYear(); // 获取当前日期的年 var month = tomonth.getMonth() + 1; // 获取当前日期的月 var year2 = year; var month2 = parseInt(month) - 1; if (month2 == 0) { year2 = parseInt(year2) - 1; month2 = 12; } if (month2 < 10) { month2 = '0' + month2; } var lastmonth = year2 + '-' + month2; return lastmonth; }; // 获取下个月 MyDate.GetNextMonth = function() { var tomonth = new Date(); var year = tomonth.getFullYear(); // 获取当前日期的年 var month = tomonth.getMonth() + 1; // 获取当前日期的月 var year2 = year; var month2 = parseInt(month) + 1; if (month2 == 13) { year2 = parseInt(year2) + 1; month2 = 1; } if (month2 < 10) { month2 = '0' + month2; } var nextmonth = year2 + '-' + month2; return nextmonth; };
自动填充表单
/** * 华盾自动填充表单 * * @param {} * customForm 表单Form元素 * @param {} * data 要填充的数据对象 */ MyUtil.AutoFillForm = function(customForm, data) { for (var attr in data) { if (typeof(data[attr]) == 'function') { continue; } var $input = $("input[name='" + attr + "']", customForm); if (null != $input && $input.length > 0) { var type = $input.attr("type"); if (type == "checkbox" || type == "radio") { var avalues = data[attr].split(","); for (var v = 0; v < avalues.length; v++) { $input.each(function(i, n) { var value = $(n).val(); if (value == avalues[v]) { $(n).attr("checked", "checked"); } }); } } else { $input.val(data[attr]); } } else { var $select = $("select[name='" + attr + "']", customForm); if (null != $select && $select.length > 0) { $select.val(data[attr]); } else { var $textarea = $("textarea[name='" + attr + "']", customForm); if (null != $textarea && $textarea.length > 0) { $textarea.val(data[attr]); } else { var $span = $("span[name='" + attr + "']", customForm); if (null != $span && $span.length > 0) { $span.html(data[attr]); }else{ continue; } } } } } }
Cookie操作
var Cookies = new Object(); // 设置值 Cookies.set = function(name, value) { var argv = arguments; var argc = arguments.length; var expires = (argc > 2) ? argv[2] : null; var path = (argc > 3) ? argv[3] : '/'; var domain = (argc > 4) ? argv[4] : null; var secure = (argc > 5) ? argv[5] : false; document.cookie = name + "=" + escape(value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : ""); }; // 获取值 Cookies.get = function(name) { var arg = name + "="; var alen = arg.length; var clen = document.cookie.length; var i = 0; var j = 0; while (i < clen) { j = i + alen; if (document.cookie.substring(i, j) == arg) return Cookies.getCookieVal(j); i = document.cookie.indexOf(" ", i) + 1; if (i == 0) break; } return null; }; // 清理 Cookies.clear = function(name) { if (Cookies.get(name)) { document.cookie = name + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT"; } }; Cookies.getCookieVal = function(offset) { var endstr = document.cookie.indexOf(";", offset); if (endstr == -1) { endstr = document.cookie.length; } return unescape(document.cookie.substring(offset, endstr)); };
base-64 编码和解码
function utf8_to_b64( str ) { return window.btoa(unescape(encodeURIComponent( str ))); } function b64_to_utf8( str ) { return decodeURIComponent(escape(window.atob( str ))); }