common.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. //v1.0.0
  2. (function ($, undefined) {
  3. $.fn.getCursorPosition = function () {
  4. var el = $(this).get(0);
  5. var pos = 0;
  6. if ('selectionStart' in el) {
  7. pos = el.selectionStart;
  8. } else if ('selection' in document) {
  9. el.focus();
  10. var Sel = document.selection.createRange();
  11. var SelLength = document.selection.createRange().text.length;
  12. Sel.moveStart('character', -el.value.length);
  13. pos = Sel.text.length - SelLength;
  14. }
  15. return pos;
  16. }
  17. })(jQuery);
  18. jQuery.cookie = function (name, value, options) {
  19. if (typeof value != 'undefined') { // name and value given, set cookie
  20. options = options || {};
  21. if (value === null) {
  22. value = '';
  23. options.expires = -1;
  24. }
  25. var expires = '';
  26. if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
  27. var date;
  28. if (typeof options.expires == 'number') {
  29. date = new Date();
  30. date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
  31. } else {
  32. date = options.expires;
  33. }
  34. expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
  35. }
  36. var path = options.path ? '; path=' + options.path : '';
  37. var domain = options.domain ? '; domain=' + options.domain : '';
  38. var secure = options.secure ? '; secure' : '';
  39. document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
  40. } else { // only name given, get cookie
  41. var cookieValue = null;
  42. if (document.cookie && document.cookie != '') {
  43. var cookies = document.cookie.split(';');
  44. for (var i = 0; i < cookies.length; i++) {
  45. var cookie = jQuery.trim(cookies[i]);
  46. // Does this cookie string begin with the name we want?
  47. if (cookie.substring(0, name.length + 1) == (name + '=')) {
  48. cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
  49. break;
  50. }
  51. }
  52. }
  53. return cookieValue;
  54. }
  55. };
  56. function checkIsArray(obj) {
  57. return Object.prototype.toString.call(obj) === '[object Array]';
  58. }
  59. function Trim(str) { //删除左右两端的空格
  60. return str.replace(/(^\s*)|(\s*$)/g, "");
  61. }
  62. function ReplaceAllString(str, replaceStrFrom, replaceStrTo) {//替换
  63. if (str && str.length > 0) {
  64. var reg = new RegExp(replaceStrFrom, "g");
  65. //console.log(str);
  66. return str.toString().replace(reg, replaceStrTo);
  67. }
  68. else
  69. return str;
  70. }
  71. function formatTime(date, format, isShort) {
  72. if (date) {
  73. var year = date.getFullYear()
  74. var month = date.getMonth() + 1
  75. var day = date.getDate()
  76. var hour = date.getHours()
  77. var minute = date.getMinutes()
  78. var second = date.getSeconds()
  79. if (!format)
  80. format = "-";
  81. if (isShort)
  82. return [year, month, day].map(formatNumber).join(format);
  83. else
  84. return [year, month, day].map(formatNumber).join(format) + ' ' + [hour, minute, second].map(formatNumber).join(':');
  85. }
  86. else
  87. return "";
  88. }
  89. function formatNumber(n) {
  90. n = n.toString()
  91. return n[1] ? n : '0' + n
  92. }
  93. function addDate(interval, number, date) {
  94. switch (interval.toLowerCase()) {
  95. case "y":
  96. return new Date(date.setFullYear(date.getFullYear() + number));
  97. case "m":
  98. return new Date(date.setMonth(date.getMonth() + number));
  99. case "d":
  100. return new Date(date.setDate(date.getDate() + number));
  101. case "w":
  102. return new Date(date.setDate(date.getDate() + 7 * number));
  103. case "h":
  104. return new Date(date.setHours(date.getHours() + number));
  105. case "n":
  106. return new Date(date.setMinutes(date.getMinutes() + number));
  107. case "s":
  108. return new Date(date.setSeconds(date.getSeconds() + number));
  109. case "l":
  110. return new Date(date.setMilliseconds(date.getMilliseconds() + number));
  111. }
  112. }
  113. function myBrowser() {
  114. var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
  115. var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
  116. var isIE = userAgent.indexOf("compatible") > -1
  117. && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
  118. var isEdge = userAgent.indexOf("Edge") > -1; //判断是否IE的Edge浏览器
  119. var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器
  120. var isSafari = userAgent.indexOf("Safari") > -1
  121. && userAgent.indexOf("Chrome") == -1; //判断是否Safari浏览器
  122. var isChrome = userAgent.indexOf("Chrome") > -1
  123. && userAgent.indexOf("Safari") > -1; //判断Chrome浏览器
  124. if (isIE) {
  125. var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
  126. reIE.test(userAgent);
  127. var fIEVersion = parseFloat(RegExp["$1"]);
  128. if (fIEVersion == 7) {
  129. return "IE7";
  130. } else if (fIEVersion == 8) {
  131. return "IE8";
  132. } else if (fIEVersion == 9) {
  133. return "IE9";
  134. } else if (fIEVersion == 10) {
  135. return "IE10";
  136. } else if (fIEVersion == 11) {
  137. return "IE11";
  138. } else {
  139. return "0";
  140. }//IE版本过低
  141. return "IE";
  142. }
  143. if (isOpera) {
  144. return "Opera";
  145. }
  146. if (isEdge) {
  147. return "Edge";
  148. }
  149. if (isFF) {
  150. return "FF";
  151. }
  152. if (isSafari) {
  153. return "Safari";
  154. }
  155. if (isChrome) {
  156. return "Chrome";
  157. }
  158. }