sbd-npm 1.3.27 → 1.3.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/util.js +62 -51
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sbd-npm",
3
- "version": "1.3.27",
3
+ "version": "1.3.29",
4
4
  "description": "Stock Big Data",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/util.js CHANGED
@@ -83,7 +83,15 @@ const Util = {
83
83
  window.open(Util.array_rand(url_arr), "_blank");
84
84
  }
85
85
  });
86
- $("#save_page_content").click(Util.save_page_content_image);
86
+ $("#save_page_content").click(function() {
87
+ let element;
88
+ if (document.getElementsByClassName("save_page_div").length > 0) {
89
+ element = document.getElementsByClassName("save_page_div")[0];
90
+ } else {
91
+ element = document.getElementById('page_content');
92
+ }
93
+ Util.save_page_content_image(element);
94
+ });
87
95
 
88
96
  $('#stock').keyup(function () {
89
97
  let st_obj = $("#search-tips");
@@ -186,55 +194,43 @@ const Util = {
186
194
  /**
187
195
  * 当前页面内容保存为图片
188
196
  * [html2canvas](https://html2canvas.hertzen.com)
197
+ * @param element 要截取的HTML元素(document.getElementById)
189
198
  */
190
- save_page_content_image: function() {
191
- if (!Util.is_load) {
192
- // 获取要截取的HTML元素
193
- let element;
194
- if (arguments.length === 1) {
195
- element = document.getElementById(arguments[0]);
196
- } else {
197
- if (document.getElementsByClassName("save_page_div").length > 0) {
198
- element = document.getElementsByClassName("save_page_div")[0];
199
- } else {
200
- element = document.getElementById('page_content');
201
- }
202
- }
203
- if (element) {
204
- Util.is_load = true;
205
- Util.show_tips("正在生成中", 0, "alert-danger");
206
- Util.show_loading();
207
- // 创建canvas元素
208
- let canvas = document.createElement("canvas");
209
- canvas.width = element.offsetWidth;
210
- canvas.height = element.offsetHeight;
211
- // 将html元素渲染到canvas上
212
- html2canvas(element).then((canvas) => {
213
- // 获取Canvas上下文对象
214
- //let ctx = canvas.getContext('2d');
215
- // 添加水印
216
- //ctx.font = '30px Arial';
217
- //ctx.fillStyle = 'rgba(0, 0, 0, 0.5)';
218
- //let text = 'Stock Big Data';
219
- //let textSize = ctx.measureText(text);
220
- //let centerX = (canvas.width - textSize.width) / 2;
221
- //let centerY = canvas.height / 2;
222
- //ctx.fillText(text, centerX, centerY);
223
-
224
- // 创建一个新的图像对象
225
- let img = new Image();
226
- // 设置图像的源为canvas中的内容
227
- img.src = canvas.toDataURL("image/png");
228
- // 创建一个下载链接并模拟点击
229
- let link = document.createElement("a");
230
- link.download = "stock_big_data_" + Util.now() + ".png";
231
- link.href = img.src;
232
- link.click();
233
-
234
- Util.is_load = false;
235
- Util.hide_tips();
236
- });
237
- }
199
+ save_page_content_image: function(element) {
200
+ if (!Util.is_load && element) {
201
+ Util.is_load = true;
202
+ Util.show_tips("正在生成中", 0, "alert-danger");
203
+ Util.show_loading();
204
+ // 创建canvas元素
205
+ let canvas = document.createElement("canvas");
206
+ canvas.width = element.offsetWidth;
207
+ canvas.height = element.offsetHeight;
208
+ // 将html元素渲染到canvas上
209
+ html2canvas(element).then((canvas) => {
210
+ // 获取Canvas上下文对象
211
+ //let ctx = canvas.getContext('2d');
212
+ // 添加水印
213
+ //ctx.font = '30px Arial';
214
+ //ctx.fillStyle = 'rgba(0, 0, 0, 0.5)';
215
+ //let text = 'Stock Big Data';
216
+ //let textSize = ctx.measureText(text);
217
+ //let centerX = (canvas.width - textSize.width) / 2;
218
+ //let centerY = canvas.height / 2;
219
+ //ctx.fillText(text, centerX, centerY);
220
+
221
+ // 创建一个新的图像对象
222
+ let img = new Image();
223
+ // 设置图像的源为canvas中的内容
224
+ img.src = canvas.toDataURL("image/png");
225
+ // 创建一个下载链接并模拟点击
226
+ let link = document.createElement("a");
227
+ link.download = "stock_big_data_" + Util.now() + ".png";
228
+ link.href = img.src;
229
+ link.click();
230
+
231
+ Util.is_load = false;
232
+ Util.hide_tips();
233
+ });
238
234
  }
239
235
  },
240
236
 
@@ -1865,13 +1861,28 @@ const Util = {
1865
1861
  * @returns {number}
1866
1862
  */
1867
1863
  format_to_second: function (format) {
1868
- if (Util.regexp_date_yyyy_mm_dd(format) || Util.regexp_date_yyyy_mm_dd_hh_mm_ss(format)) {
1864
+ if (Util.regexp_date_yyyymmdd(format)) {
1865
+ let year = format.slice(0, 4);
1866
+ let month = format.slice(4, 6);
1867
+ let day = format.slice(6, 8);
1868
+ let date = new Date(year, month - 1, day);
1869
+ return (date.getTime() / 1000);
1870
+ } else if (Util.regexp_date_yyyy_mm_dd(format) || Util.regexp_date_yyyy_mm_dd_hh_mm_ss(format)) {
1869
1871
  let second = +new Date(format.replace(/-/g, '/'));
1870
1872
  return (second / 1000);
1871
1873
  }
1872
1874
  return 0;
1873
1875
  },
1874
1876
 
1877
+ /**
1878
+ * 正则匹配 20190910 这类时间格式
1879
+ * @param format
1880
+ */
1881
+ regexp_date_yyyymmdd: function (format) {
1882
+ format = format + "";
1883
+ return /^[1-9]\d{3}(0?[1-9]|1[0-2])(0?[1-9]|[1-2]\d|3[0-1])$/.test(format);
1884
+ },
1885
+
1875
1886
  /**
1876
1887
  * 正则匹配 2019-09-10 这类时间格式
1877
1888
  * @param format
@@ -2994,7 +3005,7 @@ const Util = {
2994
3005
  _html.push('<span class="fa fa-calendar-o form-control-feedback left" aria-hidden="true"></span>');
2995
3006
  _html.push('</div>');
2996
3007
  _html.push('</div>');
2997
- _html.push('<div class="form-group">');
3008
+ _html.push('<div class="form-group" style="margin-left: -15px;">');
2998
3009
  _html.push('<label for="', end_id, '"></label>');
2999
3010
  _html.push('<div class="col-md-6 col-sm-6 col-xs-12 form-group">');
3000
3011
  _html.push('<input type="text" class="form-control has-feedback-left" id="', end_id, '" name="', end_id, '" title="结束时间" placeholder="结束时间" value="', end_date, '">');