国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

215 rindas
8.2KB

  1. //滚动到页面顶部
  2. function gotop() {
  3. $('html, body').animate({ scrollTop: 0 }, 'slow');
  4. }
  5. //读写cookie函数
  6. function GetCookie(c_name) {
  7. if (document.cookie.length > 0) {
  8. c_start = document.cookie.indexOf(c_name + "=")
  9. if (c_start != -1) {
  10. c_start = c_start + c_name.length + 1;
  11. c_end = document.cookie.indexOf(";", c_start);
  12. if (c_end == -1) {
  13. c_end = document.cookie.length;
  14. }
  15. return unescape(document.cookie.substring(c_start, c_end));
  16. }
  17. }
  18. return null
  19. }
  20. function SetCookie(c_name, value, expiredays) {
  21. var exdate = new Date();
  22. exdate.setDate(exdate.getDate() + expiredays);
  23. document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString()); //使设置的有效时间正确。增加toGMTString()
  24. }
  25. //全局消息提示框,生成一个随机id
  26. function guid() {
  27. function S4() {
  28. return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
  29. }
  30. return (S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4());
  31. }
  32. var _DedeConfirmFuncs = {};
  33. var _DedeConfirmFuncsClose = {};
  34. function __DedeConfirmRun(modalID) {
  35. _DedeConfirmFuncs[modalID]();
  36. }
  37. function __DedeConfirmRunClose(modalID) {
  38. _DedeConfirmFuncsClose[modalID]();
  39. }
  40. function DedeConfirm(content="",title="确认提示") {
  41. let modalID = guid();
  42. return new Promise((resolve, reject) => {
  43. _DedeConfirmFuncs[modalID] = ()=>{
  44. resolve("success");
  45. CloseModal(`DedeModal${modalID}`);
  46. }
  47. _DedeConfirmFuncsClose[modalID] = ()=>{
  48. reject("cancel");
  49. CloseModal(`DedeModal${modalID}`);
  50. }
  51. let footer = `<button type="button" class="btn btn-outline-success btn-sm" onClick="__DedeConfirmRunClose(\'${modalID}\')">取消</button> <button type="button" class="btn btn-success btn-sm" onClick="__DedeConfirmRun(\'${modalID}\')">确定</button>`;
  52. let modal = `<div id="DedeModal${modalID}" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="DedeModalLabel${modalID}">
  53. <div class="modal-dialog modal-dialog-centered" role="document">
  54. <div class="modal-content"><div class="modal-header">
  55. <h6 class="modal-title" id="DedeModalLabel${modalID}">${title}</h6>`;
  56. modal += `<button type="button" class="close" data-dismiss="modal" aria-label="Close">
  57. <span>&times;</span>
  58. </button>`;
  59. modal += `</div><div class="modal-body">${content}</div><div class="modal-footer">${footer}</div></div></div></div>`;
  60. $("body").append(modal)
  61. $("#DedeModal" + modalID).modal({
  62. backdrop: 'static',
  63. show: true
  64. });
  65. $("#DedeModal" + modalID).on('hidden.bs.modal', function (e) {
  66. $("#DedeModal" + modalID).remove();
  67. })
  68. })
  69. }
  70. //函数会返回一个modalID,通过这个id可自已定义一些方法,这里用到了一个展开语法:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Spread_syntax
  71. function ShowMsg(content, ...args) {
  72. title = "系统提示";
  73. if (typeof content == "undefined") content = "";
  74. modalID = guid();
  75. var footer = `<button type="button" class="btn btn-outline-success btn-sm" onClick="CloseModal(\'DedeModal${modalID}\')">确定</button>`;
  76. var noClose = false;
  77. if (args.length == 1) {
  78. //存在args参数
  79. if (typeof args[0].title !== 'undefined' && args[0].title != "") {
  80. title = args[0].title;
  81. }
  82. if (typeof args[0].footer !== 'undefined' && args[0].footer != "") {
  83. footer = args[0].footer;
  84. }
  85. if (typeof args[0].noClose !== 'undefined' && args[0].noClose == true) {
  86. noClose = true;
  87. }
  88. }
  89. String.prototype.replaceAll = function (s1, s2) {
  90. return this.replace(new RegExp(s1, "gm"), s2);
  91. }
  92. footer = footer.replaceAll("~modalID~", modalID);
  93. content = content.replaceAll("~modalID~", modalID);
  94. var modal = `<div id="DedeModal${modalID}" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="DedeModalLabel${modalID}">
  95. <div class="modal-dialog modal-dialog-centered" role="document">
  96. <div class="modal-content"><div class="modal-header">
  97. <h6 class="modal-title" id="DedeModalLabel${modalID}">${title}</h6>`;
  98. if (!noClose) {
  99. modal += `<button type="button" class="close" data-dismiss="modal" aria-label="Close">
  100. <span>&times;</span>
  101. </button>`;
  102. }
  103. modal += `</div><div class="modal-body">${content}</div><div class="modal-footer">${footer}</div></div></div></div>`;
  104. $("body").append(modal)
  105. $("#DedeModal" + modalID).modal({
  106. backdrop: 'static',
  107. show: true
  108. });
  109. $("#DedeModal" + modalID).on('hidden.bs.modal', function (e) {
  110. $("#DedeModal" + modalID).remove();
  111. })
  112. return modalID;
  113. }
  114. //隐藏并销毁modal
  115. function CloseModal(modalID) {
  116. $("#" + modalID).modal('hide');
  117. $("#" + modalID).on('hidden.bs.modal', function (e) {
  118. if ($("#" + modalID).length > 0) {
  119. $("#" + modalID).remove();
  120. }
  121. })
  122. }
  123. //在某个元素内显示alert信息
  124. function ShowAlert(ele, content, type, showtime = 3000) {
  125. let msg = `<div class="alert alert-${type}" role="alert">
  126. ${content}
  127. </div>`;
  128. $(ele).html(msg);
  129. $(ele).show();
  130. setTimeout(() => {
  131. $(ele).html("");
  132. }, showtime);
  133. }
  134. //提交纠错信息
  135. function ErrAddSaveDo(modalID) {
  136. let aid = $("#iptID").val();
  137. let title = $("#iptTitle").val();
  138. let type = $("#selType").val();
  139. let err = $("#iptErr").val();
  140. let erradd = $("#iptErradd").val();
  141. let parms = {
  142. format: "json",
  143. dopost: "saveedit",
  144. aid: aid,
  145. title: title,
  146. type: type,
  147. err: err,
  148. erradd: erradd,
  149. };
  150. $("#btnSubmit").attr("disabled", "disabled");
  151. if (typeof PHPURL === "undefined") {
  152. const PHPURL = "/plus";
  153. }
  154. $.post(PHPURL + "/erraddsave.php", parms, function (data) {
  155. let result = JSON.parse(data);
  156. if (result.code === 200) {
  157. CloseModal(modalID);
  158. } else {
  159. ShowAlert("#error-add-alert", `提交失败:${result.msg}`, "danger");
  160. }
  161. $("#btnSubmit").removeAttr("disabled");
  162. });
  163. }
  164. //错误提示
  165. function ErrorAddSave(id, title) {
  166. let content = `
  167. <input type="hidden" value="${id}" class="form-control" id="iptID">
  168. <div class="form-group">
  169. <div id="error-add-alert">
  170. </div>
  171. <label for="iptTitle" class="col-form-label">标题:</label>
  172. <input type="text" disabled=true value="${title}" class="form-control" id="iptTitle">
  173. </div>
  174. <div class="form-group">
  175. <label for="message-text" class="col-form-label">错误类型:</label>
  176. <select id="selType" class="form-control">
  177. <option value="1">错别字(除的、地、得)</option>
  178. <option value="2">成语运用不当</option>
  179. <option value="3">专业术语写法不规则</option>
  180. <option value="4">产品与图片不符</option>
  181. <option value="5">事实年代以及文档错误</option>
  182. <option value="6">技术参数错误</option>
  183. <option value="7">其他</option>
  184. </select>
  185. </div>
  186. <div class="form-group">
  187. <label for="message-text" class="col-form-label">错误文档:</label>
  188. <textarea name="iptErr" class="form-control" id="iptErr"></textarea>
  189. </div>
  190. <div class="form-group">
  191. <label for="message-text" class="col-form-label">修正建议:</label>
  192. <textarea name="optErradd" class="form-control" id="iptErradd"></textarea>
  193. </div>
  194. `;
  195. let footer = `
  196. <button type="button" id="btnSubmit" class="btn btn-success btn-sm" onClick="ErrAddSaveDo('DedeModal~modalID~')">提交</button>
  197. <button type="button" class="btn btn-outline-success btn-sm" onClick="CloseModal('DedeModal~modalID~')">确定</button>
  198. `;
  199. ShowMsg(content, {
  200. 'footer': footer,
  201. });
  202. }
  203. //页面加载触发
  204. $(document).ready(function () {
  205. window.onscroll = function () { scrollFunction() };
  206. function scrollFunction() {
  207. if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
  208. $("#btnScrollTop").show();
  209. } else {
  210. $("#btnScrollTop").hide();
  211. }
  212. }
  213. });