首页 > 编程 > JavaScript > 正文

本人自用的global.js库源码分享

2019-11-20 13:05:09
字体:
来源:转载
供稿:网友
var GLOBAL = {};GLOBAL.namespace = function(str) {  var arr = str.split("."), o = GLOBAL,i;  for (i = (arr[0] = "GLOBAL") ? 1 : 0; i < arr.length; i++) {    o[arr[i]] = o[arr[i]] || {};    o = o[arr[i]];  }};//Dom相关GLOBAL.namespace("Dom");GLOBAL.Dom.getNextNode = function (node) {  node = typeof node == "string" ? document.getElementById(node) : node;  var nextNode = node.nextSibling;  if (!nextNode) {    return null;  }  if (!document.all) {    while (true) {      if (nextNode.nodeType == 1) {        break;      } else {        if (nextNode.nextSibling) {          nextNode = nextNode.nextSibling;        } else {          break;        }      }    }    return nextNode;  }}GLOBAL.Dom.setOpacity = function(node, level) {  node = typeof node == "string" ? document.getElementById(node) : node;  if (document.all) {    node.style.filter = 'alpha(opacity=' + level + ')';  } else {    node.style.opacity = level / 100;  }};GLOBAL.Dom.getElementsByClassName = function (str, root, tag) {  if (root) {    root = typeof root == "string" ? document.getElementById(root) : root;  } else {    root = document.body;  }  tag = tag || "*";  var els = root.getElementsByTagName(tag), arr = [];  for (var i = 0, n = els.length; i < n; i++) {    for (var j = 0, k = els[i].className.split(" "), l = k.length; j < l; j++) {      if (k[j] == str) {        arr.push(els[i]);        break;      }    }  }  return arr;}GLOBAL.namespace("Event");GLOBAL.Event.stopPropagation = function(e) {  e = window.event || e;  if (document.all) {    e.cancelBubble = true;  } else {    e.stopPropagation();  }};GLOBAL.Event.getEventTarget = function(e) {  e = window.event || e;  return e.srcElement || e.target;};GLOBAL.Event.on = function(node, eventType, handler) {  node = typeof node == "string" ? document.getElementById(node) : node;  if (document.all) {    node.attachEvent("on" + eventType, handler);  } else {    node.addEventListener(eventType, handler, false);  }};//Lang相关GLOBAL.namespace("Lang");GLOBAL.Lang.trim = function(ostr) {  return ostr.replace(/^/s+|/s+$/g, "");};GLOBAL.Lang.isNumber = function(s) {  return !isNaN(s);};function isString(s) {  return typeof s === "string";}function isBoolean(s) {  return typeof s === "boolean";}function isFunction(s) {  return typeof s === "function";}function isNull(s) {  return s === null;}function isUndefined(s) {  return typeof s === "undefined";}function isEmpty(s) {  return /^/s*$/.test(s);}function isArray(s) {  return s instanceof Array;}GLOBAL.Dom.get = function (node) {  node = typeof node === "string" ? document.getElementById(node) : node;  return node;}function $(node) {  node = typeof node == "string" ? document.getElementById(node) : node;  return node;}GLOBAL.Lang.extend = function(subClass, superClass) {  var F = function() {  };  F.prototype = superClass.prototype;  subClass.prototype = new F();  subClass.prototype.constructor = subClass;  subClass.superClass = subClass.prototype;  if (superClass.prototype.constructor == Object.prototype.constructor) {    superClass.prototype.constructor = superClass;  }};GLOBAL.namespace("Cookie");GLOBAL.Cookie = {  read: function (name) {    var cookieStr = ";" + document.cookie + ";";    var index = cookieStr.indexOf(";" + name + "=");    if (index != -1) {      var s = cookieStr.substring(index + name.length + 3, cookieStr.length);      return unescape(s.substring(0, s.indexOf(";")));    } else {      return null;    }  },  set: function (name, value, expires) {    var expDays = expires * 24 * 60 * 60 * 1000;    var expDate = new Date();    expDate.setTime(expDate.getTime() + expDays);    var expString = expires ? ";expires=" + expDate.toGMTString() : "";    var pathString = ";path=/";    document.cookie = name + "=" + escape(value) + expString + pathString;  },  del: function (name, value, expires) {    var exp = new Date(new Date().getTime() - 1);    var s = this.read(name);    if (s != null) {      document.cookie = name + "=" + s + ";expires=" + exp.toGMTString() + ";path=/";    }  }};

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表