//一些常用的方法收集
var Utils = window.Utils = $U = {
name:"util",
vesion:"wx_0.1"
}
//清除前后空格键
$U.trim=function(str,type){
var regALL = /(^\s*)|(\s*$)/g;
var regL = /^\s*/g;
var regR = /\s*$/g;
var reg= regALL;
if(type=='L'){
reg= regL;
}else if(type=='R'){
reg= regR;
}
return str.replace(reg,"");
};
//格式化日期yyyy-mm-dd
$U.formateDate=function(format){
var date = new Date();
//console.log("天:"+date.getDate());
//console.log("星期:"+date.getDay());
//console.log("年:"+date.getFullYear());
//console.log("月:"+date.getMonth());
console.log(date.toString());
};
//字符串替换
$U.formatTemplate=function (source, opts) {
source = String(source);
if ( 'undefined' != typeof opts ) {
if ( '[object Object]' == Object.prototype.toString.call( opts ) ) {
return source.replace( /\$\{(.+?)\}/g,
function ( match, key ) {//key与分组有关()且.+?问号作用指0个或一个
var replacer = opts[ key ];
if ( 'function' == typeof replacer ) {
replacer = replacer( key );
}
return ( 'undefined' == typeof replacer ? '' : replacer );
});
} else {
//取得从第二个参数以后的所有参数,以数组的形式
var data = Array.prototype.slice.call(arguments, 1);
var len = data.length;
return source.replace( /\{(\d+)\}/g,
function ( match, index ) {
index = parseInt( index, 10 );
return ( index >= len ? match : data[index] );
});
}
}
return source;
};
// HTML标签字符串转义
$U.escapeHTML=function(str){
return str.replace(/</g, '<');
}
//得到字符串字节数
$U.getBytesLength = function(str){
var len = 0;
for (var i = 0; i < str.length; i++) {
var c = str.charCodeAt(i);
//单字节加1
if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) {
len++;
}
else {
len += 2;
}
}
return len;
}
//当一个变量有值时执行
$U.excute=function(str,func){
var exeReturn = false;
var exe = function(){
var strR = eval(str);
if(strR!=null){
exeReturn = true;
func();
}
if(exeReturn){
clearInterval(sid);
}
}
var sid = setInterval(exe,500);
}
//获取页面的高度与宽度
$U.getPageSize=function(){
return {
pageHeigh: document.body.scrollHeight || document.documentElement.scrollHeight,
pageWidth: document.body.scrollWidth || document.documentElement.scrollWidth
};
}
//获取窗口的高度与宽度 innerHeight指可视的大小,一屏,outerHeight指整个窗口的大小
$U.getWindowSize=function(){
var docEl = document.documentElement; //标准文档解析下document.compatMode
return {
windowHeight: self.innerHeight || docEl && docEl.clientHeight || document.body.clientHeight,
windowWidth: self.innerWidth || docE1 && docE1.clientWidth||document.body.clientWidth
}
}
//获取滚动条的高度与宽度
$U.getScrollSize = function(a){
var b = document.documentElement;
if (a) {
var c = a.parentNode,
e = a.scrollTop || 0;
if (a == b) e = UI.scrollY();
return c ? e + UI.scrollY(c) : e
}
return self.pageYOffset || b && b.scrollTop || document.body.scrollTop
}
//对象克隆
$U.clone = function(myObj){
var myNewObj,objType=Object.prototype.toString.call(myObj);
if(objType=='[object Array]'){
myNewObj=[];
for(var i=0;i<myObj.length;i++){
myNewObj[i]=$U.clone(myObj[i]);
}
}else if(objType=='[object Object'){
myNewObj = new Object();
for(key in myObj){
myNewObj[key] = $U.clone(myObj[key]);
}
}else if(objType=='[object Date'){
return myObj.toString();
}else{
return myObj;
}
return myNewObj;
}
//获取cookie
$U.getCookie = function(name){
var strcookies = unescape(document.cookie);
var cookies = strcookies.split(";");
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i].split("=");
if (cookie[0] == name) {
return unescape(cookie[1]);
}
}
}
//写cookie
$U.writeCookie = function(name,value,expiresHours,path,domain){
//判断是否设置过期时间
var cookieString=name+"="+escape(value)+path?(";path="+path):"";
cookieString+=domain?(";domain="+domain):"";
if(expiresHours>0){
var date=new Date();
date.setTime(date.getTime+expiresHours*3600*1000);
cookieString=cookieString+"; expires="+date.toGMTString();
}
document.cookie=cookieString;
}
//删除cookie
$U.deleteCookie = function(name){
var date=new Date();
date.setTime(date.getTime()-10000);
document.cookie=name+"=v; expires="+date.toGMTString();
}
//创建加载
$U.setLoading=function(){
var img = document.creatElement('img');
img.src="";
}
//快速获取元素的最大值与最小值
//Math.max.apply(Math, [1,2,3]) // Math.min.apply(Math,[1,2,3]
var Utils = window.Utils = $U = {
name:"util",
vesion:"wx_0.1"
}
//清除前后空格键
$U.trim=function(str,type){
var regALL = /(^\s*)|(\s*$)/g;
var regL = /^\s*/g;
var regR = /\s*$/g;
var reg= regALL;
if(type=='L'){
reg= regL;
}else if(type=='R'){
reg= regR;
}
return str.replace(reg,"");
};
//格式化日期yyyy-mm-dd
$U.formateDate=function(format){
var date = new Date();
//console.log("天:"+date.getDate());
//console.log("星期:"+date.getDay());
//console.log("年:"+date.getFullYear());
//console.log("月:"+date.getMonth());
console.log(date.toString());
};
//字符串替换
$U.formatTemplate=function (source, opts) {
source = String(source);
if ( 'undefined' != typeof opts ) {
if ( '[object Object]' == Object.prototype.toString.call( opts ) ) {
return source.replace( /\$\{(.+?)\}/g,
function ( match, key ) {//key与分组有关()且.+?问号作用指0个或一个
var replacer = opts[ key ];
if ( 'function' == typeof replacer ) {
replacer = replacer( key );
}
return ( 'undefined' == typeof replacer ? '' : replacer );
});
} else {
//取得从第二个参数以后的所有参数,以数组的形式
var data = Array.prototype.slice.call(arguments, 1);
var len = data.length;
return source.replace( /\{(\d+)\}/g,
function ( match, index ) {
index = parseInt( index, 10 );
return ( index >= len ? match : data[index] );
});
}
}
return source;
};
// HTML标签字符串转义
$U.escapeHTML=function(str){
return str.replace(/</g, '<');
}
//得到字符串字节数
$U.getBytesLength = function(str){
var len = 0;
for (var i = 0; i < str.length; i++) {
var c = str.charCodeAt(i);
//单字节加1
if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) {
len++;
}
else {
len += 2;
}
}
return len;
}
//当一个变量有值时执行
$U.excute=function(str,func){
var exeReturn = false;
var exe = function(){
var strR = eval(str);
if(strR!=null){
exeReturn = true;
func();
}
if(exeReturn){
clearInterval(sid);
}
}
var sid = setInterval(exe,500);
}
//获取页面的高度与宽度
$U.getPageSize=function(){
return {
pageHeigh: document.body.scrollHeight || document.documentElement.scrollHeight,
pageWidth: document.body.scrollWidth || document.documentElement.scrollWidth
};
}
//获取窗口的高度与宽度 innerHeight指可视的大小,一屏,outerHeight指整个窗口的大小
$U.getWindowSize=function(){
var docEl = document.documentElement; //标准文档解析下document.compatMode
return {
windowHeight: self.innerHeight || docEl && docEl.clientHeight || document.body.clientHeight,
windowWidth: self.innerWidth || docE1 && docE1.clientWidth||document.body.clientWidth
}
}
//获取滚动条的高度与宽度
$U.getScrollSize = function(a){
var b = document.documentElement;
if (a) {
var c = a.parentNode,
e = a.scrollTop || 0;
if (a == b) e = UI.scrollY();
return c ? e + UI.scrollY(c) : e
}
return self.pageYOffset || b && b.scrollTop || document.body.scrollTop
}
//对象克隆
$U.clone = function(myObj){
var myNewObj,objType=Object.prototype.toString.call(myObj);
if(objType=='[object Array]'){
myNewObj=[];
for(var i=0;i<myObj.length;i++){
myNewObj[i]=$U.clone(myObj[i]);
}
}else if(objType=='[object Object'){
myNewObj = new Object();
for(key in myObj){
myNewObj[key] = $U.clone(myObj[key]);
}
}else if(objType=='[object Date'){
return myObj.toString();
}else{
return myObj;
}
return myNewObj;
}
//获取cookie
$U.getCookie = function(name){
var strcookies = unescape(document.cookie);
var cookies = strcookies.split(";");
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i].split("=");
if (cookie[0] == name) {
return unescape(cookie[1]);
}
}
}
//写cookie
$U.writeCookie = function(name,value,expiresHours,path,domain){
//判断是否设置过期时间
var cookieString=name+"="+escape(value)+path?(";path="+path):"";
cookieString+=domain?(";domain="+domain):"";
if(expiresHours>0){
var date=new Date();
date.setTime(date.getTime+expiresHours*3600*1000);
cookieString=cookieString+"; expires="+date.toGMTString();
}
document.cookie=cookieString;
}
//删除cookie
$U.deleteCookie = function(name){
var date=new Date();
date.setTime(date.getTime()-10000);
document.cookie=name+"=v; expires="+date.toGMTString();
}
//创建加载
$U.setLoading=function(){
var img = document.creatElement('img');
img.src="";
}
//快速获取元素的最大值与最小值
//Math.max.apply(Math, [1,2,3]) // Math.min.apply(Math,[1,2,3]