第一次提交
This commit is contained in:
commit
8121362a03
4412 files changed
+1091845
No files matched your search
@@ -0,0 +1,265 @@
|
||||
define(function (require, exports, module) {
|
||||
|
||||
//判断当前日期是否大于某个日期
|
||||
// yyyy-MM-dd HH:mm:ss
|
||||
var greaterThanTime = function (time) {
|
||||
var now = new Date();
|
||||
var end = parseDate(time);
|
||||
var ret = false;
|
||||
if (now.getTime() > end.getTime()) {
|
||||
ret = true;
|
||||
}
|
||||
// logger.debug([formatTime(now),">", formatTime(end),ret]);
|
||||
return ret;
|
||||
|
||||
}
|
||||
//跟greaterThanTime恰好相反
|
||||
var lessThanTime = function (t) {
|
||||
return !greaterThanTime(t);
|
||||
}
|
||||
//yyyy-MM-dd HH:mm:ss --> Date objet
|
||||
var parseDate = function (time) {
|
||||
|
||||
var t = String(time);
|
||||
var year = parseInt(t.substring(0, 4)),
|
||||
month = parseInt(t.substring(5, 7)),
|
||||
day = parseInt(t.substring(8, 10)),
|
||||
hour = parseInt(t.substring(11, 13)),
|
||||
min = parseInt(t.substring(14, 16)),
|
||||
sec = parseInt(t.substring(17, 19));
|
||||
|
||||
// logger.debug([year,month,day,hour,min,sec])
|
||||
|
||||
var end = new Date();
|
||||
end.setFullYear(year);
|
||||
end.setMonth(month - 1, day);
|
||||
end.setHours(hour);
|
||||
end.setMinutes(min);
|
||||
end.setSeconds(sec);
|
||||
end.setMilliseconds(0);
|
||||
|
||||
return end;
|
||||
}
|
||||
|
||||
var parseXML = function (data) {
|
||||
var xml, tmp;
|
||||
if (window.DOMParser) { // Standard
|
||||
tmp = new DOMParser();
|
||||
xml = tmp.parseFromString(data, "text/xml");
|
||||
} else { // IE
|
||||
xml = new ActiveXObject("Microsoft.XMLDOM");
|
||||
xml.async = "false";
|
||||
xml.loadXML(data);
|
||||
}
|
||||
tmp = xml.documentElement;
|
||||
if (!tmp || !tmp.nodeName || tmp.nodeName === "parsererror") {
|
||||
return null;
|
||||
}
|
||||
return xml;
|
||||
}
|
||||
|
||||
var xmlToJson = function (obj) {
|
||||
if (this == null) return null;
|
||||
var retObj = new Object;
|
||||
buildObjectNode(retObj,
|
||||
/*jQuery*/
|
||||
obj);
|
||||
return retObj;
|
||||
function buildObjectNode(cycleOBJ,
|
||||
/*Element*/
|
||||
elNode) {
|
||||
/*NamedNodeMap*/
|
||||
var nodeAttr = elNode.attributes;
|
||||
if (nodeAttr != null) {
|
||||
if (nodeAttr.length && cycleOBJ == null) cycleOBJ = new Object;
|
||||
for (var i = 0; i < nodeAttr.length; i++) {
|
||||
cycleOBJ[nodeAttr[i].name] = nodeAttr[i].value;
|
||||
}
|
||||
}
|
||||
var nodeText = "text";
|
||||
if (elNode.text == null) nodeText = "textContent";
|
||||
/*NodeList*/
|
||||
var nodeChilds = elNode.childNodes;
|
||||
if (nodeChilds != null) {
|
||||
if (nodeChilds.length && cycleOBJ == null) cycleOBJ = new Object;
|
||||
for (var i = 0; i < nodeChilds.length; i++) {
|
||||
if (nodeChilds[i].tagName != null) {
|
||||
if (nodeChilds[i].childNodes[0] != null && nodeChilds[i].childNodes.length <= 1 && (nodeChilds[i].childNodes[0].nodeType == 3 || nodeChilds[i].childNodes[0].nodeType == 4)) {
|
||||
if (cycleOBJ[nodeChilds[i].tagName] == null) {
|
||||
cycleOBJ[nodeChilds[i].tagName] = nodeChilds[i][nodeText];
|
||||
} else {
|
||||
if (typeof (cycleOBJ[nodeChilds[i].tagName]) == "object" && cycleOBJ[nodeChilds[i].tagName].length) {
|
||||
cycleOBJ[nodeChilds[i].tagName][cycleOBJ[nodeChilds[i].tagName].length] = nodeChilds[i][nodeText];
|
||||
} else {
|
||||
cycleOBJ[nodeChilds[i].tagName] = [cycleOBJ[nodeChilds[i].tagName]];
|
||||
cycleOBJ[nodeChilds[i].tagName][1] = nodeChilds[i][nodeText];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (nodeChilds[i].childNodes.length) {
|
||||
if (cycleOBJ[nodeChilds[i].tagName] == null) {
|
||||
cycleOBJ[nodeChilds[i].tagName] = new Object;
|
||||
buildObjectNode(cycleOBJ[nodeChilds[i].tagName], nodeChilds[i]);
|
||||
} else {
|
||||
if (cycleOBJ[nodeChilds[i].tagName].length) {
|
||||
cycleOBJ[nodeChilds[i].tagName][cycleOBJ[nodeChilds[i].tagName].length] = new Object;
|
||||
buildObjectNode(cycleOBJ[nodeChilds[i].tagName][cycleOBJ[nodeChilds[i].tagName].length - 1], nodeChilds[i]);
|
||||
} else {
|
||||
cycleOBJ[nodeChilds[i].tagName] = [cycleOBJ[nodeChilds[i].tagName]];
|
||||
cycleOBJ[nodeChilds[i].tagName][1] = new Object;
|
||||
buildObjectNode(cycleOBJ[nodeChilds[i].tagName][1], nodeChilds[i]);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
cycleOBJ[nodeChilds[i].tagName] = nodeChilds[i][nodeText];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var o = {
|
||||
xmlToJson:xmlToJson,
|
||||
parseXML: parseXML,
|
||||
parseDate: parseDate,
|
||||
lessThanTime: lessThanTime,
|
||||
greaterThanTime: greaterThanTime,
|
||||
/*
|
||||
* 获取 url 中指定变量的值
|
||||
* @param {[String]} key name [变量名]
|
||||
* @param {[String]} url [url地址]
|
||||
* */
|
||||
getUrlParam: function (name, url) {
|
||||
var re = new RegExp("[\\?&#]" + name + "=([^&#]+)", "gi");
|
||||
var ma = (url || location.href).match(re);
|
||||
var strArr;
|
||||
|
||||
if (ma && ma.length > 0) {
|
||||
strArr = (ma[ma.length - 1]).split("=");
|
||||
if (strArr && strArr.length > 1) {
|
||||
return strArr[1];
|
||||
}
|
||||
return ''
|
||||
}
|
||||
return '';
|
||||
},
|
||||
now: Date.now || function () { return new Date().getTime(); },
|
||||
debounce: function (func, wait, immediate) {
|
||||
var timeout, args, context, timestamp, result;
|
||||
|
||||
var later = function () {
|
||||
var last = o.now() - timestamp;
|
||||
if (last < wait) {
|
||||
timeout = setTimeout(later, wait - last);
|
||||
} else {
|
||||
timeout = null;
|
||||
if (!immediate) {
|
||||
result = func.apply(context, args);
|
||||
context = args = null;
|
||||
}
|
||||
}
|
||||
};
|
||||
return function () {
|
||||
context = this;
|
||||
args = arguments;
|
||||
timestamp = o.now();
|
||||
var callNow = immediate && !timeout;
|
||||
if (!timeout) {
|
||||
timeout = setTimeout(later, wait);
|
||||
}
|
||||
if (callNow) {
|
||||
result = func.apply(context, args);
|
||||
context = args = null;
|
||||
}
|
||||
|
||||
return result;
|
||||
};
|
||||
},
|
||||
imageLoad: function (element, options) {
|
||||
var imgs = (element instanceof $ ? element : $(element)).find('img');
|
||||
|
||||
imgs.length && imgs.on('load', function () {
|
||||
$.isFunction(options.done) && options.done(this)
|
||||
}).one('error', function () {
|
||||
$.isFunction(options.fail) && options.fail(this)
|
||||
})
|
||||
},
|
||||
format: function (text, obj) {
|
||||
var c = obj || {};
|
||||
var b = text;
|
||||
for (var a in c) {
|
||||
if (c.hasOwnProperty(a)) {
|
||||
b = b.replace(new RegExp("\\$\\{" + a + "\\}", "gm"), c[a]);
|
||||
}
|
||||
}
|
||||
return b;
|
||||
},
|
||||
htmlEscape: function (input) {
|
||||
if (typeof (input) !== "string")
|
||||
return input;
|
||||
var result = [];
|
||||
var length = input.length;
|
||||
for (var i = 0; i < length; i++) {
|
||||
var c = input.charAt(i).toString();
|
||||
if (c == '&') {
|
||||
result.push("&");
|
||||
} else if (c == '\"') {
|
||||
result.push(""");
|
||||
} else if (c == '<') {
|
||||
result.push("<");
|
||||
} else if (c == '>') {
|
||||
result.push(">");
|
||||
} else if (c == '\'') {
|
||||
result.push("'");
|
||||
} else if (c == '\\') {
|
||||
result.push("\");
|
||||
} else {
|
||||
result.push(c);
|
||||
}
|
||||
}
|
||||
return result.join("");
|
||||
},
|
||||
JSONString: (window.JSON && JSON.stringify) || function (vContent) {
|
||||
if (vContent instanceof Object) {
|
||||
var sOutput = "";
|
||||
if (vContent.constructor === Array) {
|
||||
for (var nId = 0; nId < vContent.length; sOutput += this.JSONString(vContent[nId]) + ",", nId++);
|
||||
return "[" + sOutput.substr(0, sOutput.length - 1) + "]";
|
||||
}
|
||||
if (vContent.toString !== Object.prototype.toString) {
|
||||
return "\"" + vContent.toString().replace(/"/g, "\\$&") + "\"";
|
||||
}
|
||||
for (var sProp in vContent) {
|
||||
sOutput += "\"" + sProp.replace(/"/g, "\\$&") + "\":" + this.JSONString(vContent[sProp]) + ",";
|
||||
}
|
||||
return "{" + sOutput.substr(0, sOutput.length - 1) + "}";
|
||||
}
|
||||
return typeof vContent === "string" ? "\"" + vContent.replace(/"/g, "\\$&") + "\"" : String(vContent);
|
||||
},
|
||||
trim : function(str){
|
||||
|
||||
str = str.replace(/\s+/g,"");
|
||||
return str;
|
||||
},
|
||||
removeHtmlTab :function(tab) {
|
||||
return tab;//删除所有HTML标签
|
||||
} ,
|
||||
html_encode:function(str)
|
||||
{
|
||||
var s = "";
|
||||
if (!str || str.length == 0) return "";
|
||||
s = str.replace(/&/g, ">");
|
||||
s = s.replace(/</g, "<");
|
||||
s = s.replace(/>/g, ">");
|
||||
s = s.replace(/ /g, " ");
|
||||
s = s.replace(/\'/g, "'");
|
||||
s = s.replace(/\"/g, """);
|
||||
s = s.replace(/\n/g, "<br>");
|
||||
return s;
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = o;
|
||||
})
|
||||
Reference in new issue
Block a user