elykia 1.0.19 → 1.0.20
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.
- package/blog/welcome.js +165 -85
- package/package.json +1 -1
package/blog/welcome.js
CHANGED
|
@@ -3,40 +3,29 @@ const elykia = {
|
|
|
3
3
|
setWelcome_info: async () => {
|
|
4
4
|
if (!document.getElementById("welcome-info")) return;
|
|
5
5
|
|
|
6
|
-
let ipLocation = localStorage.getItem('welcome-info');
|
|
7
|
-
if (ipLocation) ipLocation = JSON.parse(ipLocation);
|
|
8
|
-
|
|
9
6
|
try {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
script.src = url;
|
|
7
|
+
return new Promise((resolve, reject) => {
|
|
8
|
+
var script = document.createElement('script');
|
|
9
|
+
var url = `https://apis.map.qq.com/ws/location/v1/ip?key=TNLBZ-FS2LQ-4X257-4ACX6-OP673-62BFJ&output=jsonp&callback=QQmap`;
|
|
10
|
+
script.src = url;
|
|
15
11
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
document.body.removeChild(script);
|
|
29
|
-
delete window.QQmap;
|
|
30
|
-
};
|
|
31
|
-
document.body.appendChild(script);
|
|
32
|
-
});
|
|
33
|
-
} else {
|
|
34
|
-
elykia.showWelcome(ipLocation.data || ipLocation);
|
|
35
|
-
}
|
|
12
|
+
window.QQmap = (data) => {
|
|
13
|
+
if (data.status === 0) {
|
|
14
|
+
elykia.showWelcome(data);
|
|
15
|
+
resolve();
|
|
16
|
+
} else {
|
|
17
|
+
reject(new Error('Failed to fetch location data'));
|
|
18
|
+
}
|
|
19
|
+
document.body.removeChild(script);
|
|
20
|
+
delete window.QQmap;
|
|
21
|
+
};
|
|
22
|
+
document.body.appendChild(script);
|
|
23
|
+
});
|
|
36
24
|
} catch (err) {
|
|
37
25
|
console.error("Error fetching data:", err);
|
|
38
26
|
}
|
|
39
27
|
},
|
|
28
|
+
|
|
40
29
|
//根据经纬度计算两点距离(点1经度,点1纬度,点2经度,点2纬度)
|
|
41
30
|
getDistance: (e1, n1, e2, n2) => {
|
|
42
31
|
const R = 6371
|
|
@@ -52,13 +41,20 @@ const elykia = {
|
|
|
52
41
|
let r = asin(c / 2) * 2 * R
|
|
53
42
|
return Math.round(r);
|
|
54
43
|
},
|
|
44
|
+
|
|
55
45
|
//根据国家、省份、城市信息自定义欢迎语
|
|
56
46
|
showWelcome: (ipStore) => {
|
|
57
47
|
const WelcomeInfo = document.getElementById("welcome-info"),
|
|
58
48
|
IP = ipStore.result.ip || "未知";
|
|
59
|
-
let dist = elykia.getDistance(
|
|
49
|
+
let dist = elykia.getDistance(
|
|
50
|
+
113.625000,
|
|
51
|
+
34.747201,
|
|
52
|
+
ipStore.result.location.lng,
|
|
53
|
+
ipStore.result.location.lat
|
|
54
|
+
),
|
|
60
55
|
address,
|
|
61
56
|
welcome_info;
|
|
57
|
+
|
|
62
58
|
//根据国家、省份、城市信息自定义欢迎语
|
|
63
59
|
//海外地区不支持省份及城市信息
|
|
64
60
|
switch (ipStore.result.ad_info.nation) {
|
|
@@ -87,7 +83,13 @@ const elykia = {
|
|
|
87
83
|
welcome_info = "拾起一片枫叶赠予你";
|
|
88
84
|
break;
|
|
89
85
|
case "中国":
|
|
90
|
-
address =
|
|
86
|
+
address =
|
|
87
|
+
ipStore.result.ad_info.province +
|
|
88
|
+
" " +
|
|
89
|
+
ipStore.result.ad_info.city +
|
|
90
|
+
" " +
|
|
91
|
+
ipStore.result.ad_info.district;
|
|
92
|
+
|
|
91
93
|
switch (ipStore.result.ad_info.province) {
|
|
92
94
|
case "北京市":
|
|
93
95
|
address = "北京市";
|
|
@@ -99,16 +101,19 @@ const elykia = {
|
|
|
99
101
|
break;
|
|
100
102
|
case "重庆市":
|
|
101
103
|
address = "重庆市";
|
|
102
|
-
welcome_info =
|
|
104
|
+
welcome_info =
|
|
105
|
+
"高德地图:已到达重庆,下面交给百度地图导航";
|
|
103
106
|
break;
|
|
104
107
|
case "河北省":
|
|
105
|
-
welcome_info =
|
|
108
|
+
welcome_info =
|
|
109
|
+
"山势巍巍成壁垒,天下雄关。铁马金戈由此向,无限江山";
|
|
106
110
|
break;
|
|
107
111
|
case "山西省":
|
|
108
112
|
welcome_info = "展开坐具长三尺,已占山河五百余";
|
|
109
113
|
break;
|
|
110
114
|
case "内蒙古自治区":
|
|
111
|
-
welcome_info =
|
|
115
|
+
welcome_info =
|
|
116
|
+
"天苍苍,野茫茫,风吹草低见牛羊";
|
|
112
117
|
break;
|
|
113
118
|
case "辽宁省":
|
|
114
119
|
welcome_info = "我想吃烤鸡架";
|
|
@@ -121,28 +126,33 @@ const elykia = {
|
|
|
121
126
|
break;
|
|
122
127
|
case "上海市":
|
|
123
128
|
address = "上海市";
|
|
124
|
-
welcome_info =
|
|
129
|
+
welcome_info =
|
|
130
|
+
"众所周知,中国只有两个城市";
|
|
125
131
|
break;
|
|
126
132
|
case "江苏省":
|
|
127
133
|
switch (ipStore.result.ad_info.city) {
|
|
128
134
|
case "南京市":
|
|
129
|
-
welcome_info =
|
|
135
|
+
welcome_info =
|
|
136
|
+
"欢迎来自安徽省南京市的小伙伴";
|
|
130
137
|
break;
|
|
131
138
|
case "苏州市":
|
|
132
139
|
welcome_info = "上有天堂,下有苏杭";
|
|
133
140
|
break;
|
|
134
141
|
default:
|
|
135
|
-
welcome_info =
|
|
142
|
+
welcome_info =
|
|
143
|
+
"散装是必须要散装的";
|
|
136
144
|
break;
|
|
137
145
|
}
|
|
138
146
|
break;
|
|
139
147
|
case "浙江省":
|
|
140
148
|
switch (ipStore.result.ad_info.city) {
|
|
141
149
|
case "杭州市":
|
|
142
|
-
welcome_info =
|
|
150
|
+
welcome_info =
|
|
151
|
+
"东风渐绿西湖柳,雁已还人未南归";
|
|
143
152
|
break;
|
|
144
153
|
default:
|
|
145
|
-
welcome_info =
|
|
154
|
+
welcome_info =
|
|
155
|
+
"望海楼明照曙霞,护江堤白蹋晴沙";
|
|
146
156
|
break;
|
|
147
157
|
}
|
|
148
158
|
break;
|
|
@@ -153,15 +163,18 @@ const elykia = {
|
|
|
153
163
|
welcome_info = "井邑白云间,岩城远带山";
|
|
154
164
|
break;
|
|
155
165
|
case "江西省":
|
|
156
|
-
welcome_info =
|
|
166
|
+
welcome_info =
|
|
167
|
+
"落霞与孤鹜齐飞,秋水共长天一色";
|
|
157
168
|
break;
|
|
158
169
|
case "山东省":
|
|
159
|
-
welcome_info =
|
|
170
|
+
welcome_info =
|
|
171
|
+
"遥望齐州九点烟,一泓海水杯中泻";
|
|
160
172
|
break;
|
|
161
173
|
case "湖北省":
|
|
162
174
|
switch (ipStore.result.ad_info.city) {
|
|
163
175
|
case "黄冈市":
|
|
164
|
-
welcome_info =
|
|
176
|
+
welcome_info =
|
|
177
|
+
"红安将军县!辈出将才!";
|
|
165
178
|
break;
|
|
166
179
|
default:
|
|
167
180
|
welcome_info = "来碗热干面~";
|
|
@@ -174,16 +187,19 @@ const elykia = {
|
|
|
174
187
|
case "广东省":
|
|
175
188
|
switch (ipStore.result.ad_info.city) {
|
|
176
189
|
case "广州市":
|
|
177
|
-
welcome_info =
|
|
190
|
+
welcome_info =
|
|
191
|
+
"看小蛮腰,喝早茶了嘛~";
|
|
178
192
|
break;
|
|
179
193
|
case "深圳市":
|
|
180
|
-
welcome_info =
|
|
194
|
+
welcome_info =
|
|
195
|
+
"今天你逛商场了嘛~";
|
|
181
196
|
break;
|
|
182
197
|
case "阳江市":
|
|
183
198
|
welcome_info = "阳春合水!";
|
|
184
199
|
break;
|
|
185
200
|
default:
|
|
186
|
-
welcome_info =
|
|
201
|
+
welcome_info =
|
|
202
|
+
"老板来两斤福建人";
|
|
187
203
|
break;
|
|
188
204
|
}
|
|
189
205
|
break;
|
|
@@ -191,7 +207,8 @@ const elykia = {
|
|
|
191
207
|
welcome_info = "桂林山水甲天下";
|
|
192
208
|
break;
|
|
193
209
|
case "海南省":
|
|
194
|
-
welcome_info =
|
|
210
|
+
welcome_info =
|
|
211
|
+
"朝观日出逐白浪,夕看云起收霞光";
|
|
195
212
|
break;
|
|
196
213
|
case "四川省":
|
|
197
214
|
welcome_info = "康康川妹子";
|
|
@@ -199,117 +216,180 @@ const elykia = {
|
|
|
199
216
|
case "贵州省":
|
|
200
217
|
switch (ipStore.result.ad_info.city) {
|
|
201
218
|
case "六盘水市":
|
|
202
|
-
welcome_info =
|
|
219
|
+
welcome_info =
|
|
220
|
+
"凉都六盘水,您好";
|
|
203
221
|
break;
|
|
204
222
|
case "贵阳市":
|
|
205
|
-
welcome_info =
|
|
223
|
+
welcome_info =
|
|
224
|
+
"爽爽贵阳,您好";
|
|
206
225
|
break;
|
|
207
226
|
case "遵义市":
|
|
208
|
-
welcome_info =
|
|
227
|
+
welcome_info =
|
|
228
|
+
"遵义红城,您好";
|
|
209
229
|
break;
|
|
210
230
|
case "安顺市":
|
|
211
|
-
welcome_info =
|
|
231
|
+
welcome_info =
|
|
232
|
+
"安顺福地,您好";
|
|
212
233
|
break;
|
|
213
234
|
case "毕节市":
|
|
214
|
-
welcome_info =
|
|
235
|
+
welcome_info =
|
|
236
|
+
"毕节山水,您好";
|
|
215
237
|
break;
|
|
216
238
|
case "铜仁市":
|
|
217
|
-
welcome_info =
|
|
239
|
+
welcome_info =
|
|
240
|
+
"铜仁梵净,您好";
|
|
218
241
|
break;
|
|
219
242
|
case "黔西南布依族苗族自治州":
|
|
220
|
-
welcome_info =
|
|
243
|
+
welcome_info =
|
|
244
|
+
"黔西南风情,您好";
|
|
221
245
|
break;
|
|
222
246
|
case "黔东南苗族侗族自治州":
|
|
223
|
-
welcome_info =
|
|
247
|
+
welcome_info =
|
|
248
|
+
"黔东南歌舞,您好";
|
|
224
249
|
break;
|
|
225
250
|
case "黔南布依族苗族自治州":
|
|
226
|
-
welcome_info =
|
|
251
|
+
welcome_info =
|
|
252
|
+
"黔南美景,您好";
|
|
227
253
|
break;
|
|
228
254
|
default:
|
|
229
|
-
welcome_info =
|
|
255
|
+
welcome_info =
|
|
256
|
+
"茅台,学生,再塞200";
|
|
230
257
|
break;
|
|
231
258
|
}
|
|
232
259
|
break;
|
|
233
260
|
case "云南省":
|
|
234
|
-
welcome_info =
|
|
261
|
+
welcome_info =
|
|
262
|
+
"玉龙飞舞云缠绕,万仞冰川直耸天";
|
|
235
263
|
break;
|
|
236
264
|
case "西藏自治区":
|
|
237
|
-
welcome_info =
|
|
265
|
+
welcome_info =
|
|
266
|
+
"躺在茫茫草原上,仰望蓝天";
|
|
238
267
|
break;
|
|
239
268
|
case "陕西省":
|
|
240
269
|
welcome_info = "来份臊子面加馍";
|
|
241
270
|
break;
|
|
242
271
|
case "甘肃省":
|
|
243
|
-
welcome_info =
|
|
272
|
+
welcome_info =
|
|
273
|
+
"羌笛何须怨杨柳,春风不度玉门关";
|
|
244
274
|
break;
|
|
245
275
|
case "青海省":
|
|
246
|
-
welcome_info =
|
|
276
|
+
welcome_info =
|
|
277
|
+
"牛肉干和老酸奶都好好吃";
|
|
247
278
|
break;
|
|
248
279
|
case "宁夏回族自治区":
|
|
249
|
-
welcome_info =
|
|
280
|
+
welcome_info =
|
|
281
|
+
"大漠孤烟直,长河落日圆";
|
|
250
282
|
break;
|
|
251
283
|
case "新疆维吾尔自治区":
|
|
252
|
-
welcome_info =
|
|
284
|
+
welcome_info =
|
|
285
|
+
"驼铃古道丝绸路,胡马犹闻唐汉风";
|
|
253
286
|
break;
|
|
254
287
|
case "台湾省":
|
|
255
|
-
welcome_info =
|
|
288
|
+
welcome_info =
|
|
289
|
+
"我在这头,大陆在那头";
|
|
256
290
|
break;
|
|
257
291
|
case "香港特别行政区":
|
|
258
292
|
address = "香港特别行政区";
|
|
259
|
-
welcome_info =
|
|
293
|
+
welcome_info =
|
|
294
|
+
"永定贼有残留地鬼嚎,迎击光非岁玉";
|
|
260
295
|
break;
|
|
261
296
|
case "澳门特别行政区":
|
|
262
297
|
address = "澳门特别行政区";
|
|
263
|
-
welcome_info =
|
|
298
|
+
welcome_info =
|
|
299
|
+
"性感荷官,在线发牌";
|
|
264
300
|
break;
|
|
265
301
|
case "河南省":
|
|
266
302
|
switch (ipStore.result.ad_info.city) {
|
|
267
303
|
case "郑州市":
|
|
268
|
-
welcome_info =
|
|
304
|
+
welcome_info =
|
|
305
|
+
"豫州之域,天地之中";
|
|
269
306
|
break;
|
|
270
307
|
case "南阳市":
|
|
271
|
-
welcome_info =
|
|
308
|
+
welcome_info =
|
|
309
|
+
"臣本布衣,躬耕于南阳此南阳非彼南阳!";
|
|
272
310
|
break;
|
|
273
311
|
case "驻马店市":
|
|
274
|
-
welcome_info =
|
|
312
|
+
welcome_info =
|
|
313
|
+
"峰峰有奇石,石石挟仙气嵖岈山的花很美哦!";
|
|
275
314
|
break;
|
|
276
315
|
case "开封市":
|
|
277
|
-
welcome_info =
|
|
316
|
+
welcome_info =
|
|
317
|
+
"刚正不阿包青天!";
|
|
278
318
|
break;
|
|
279
319
|
case "洛阳市":
|
|
280
|
-
welcome_info =
|
|
320
|
+
welcome_info =
|
|
321
|
+
"洛阳牡丹甲天下";
|
|
281
322
|
break;
|
|
282
323
|
case "平顶山市":
|
|
283
|
-
welcome_info =
|
|
324
|
+
welcome_info =
|
|
325
|
+
"QQ市~ 博主家乡~ 欢迎来玩~!";
|
|
284
326
|
break;
|
|
285
327
|
default:
|
|
286
|
-
welcome_info =
|
|
328
|
+
welcome_info =
|
|
329
|
+
"可否带我品尝河南烩面啦?";
|
|
287
330
|
break;
|
|
288
331
|
}
|
|
289
332
|
break;
|
|
290
333
|
default:
|
|
291
|
-
welcome_info =
|
|
334
|
+
welcome_info =
|
|
335
|
+
"带我去你的城市逛逛吧";
|
|
292
336
|
break;
|
|
293
337
|
}
|
|
294
338
|
break;
|
|
295
339
|
default:
|
|
296
|
-
welcome_info =
|
|
340
|
+
welcome_info =
|
|
341
|
+
"带我去你的国家看看吧";
|
|
297
342
|
break;
|
|
298
343
|
}
|
|
344
|
+
|
|
299
345
|
//判断时间
|
|
300
346
|
let timeChange,
|
|
301
347
|
date = new Date();
|
|
302
|
-
if (date.getHours() >= 5 && date.getHours() < 11)
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
else if (
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
348
|
+
if (date.getHours() >= 5 && date.getHours() < 11)
|
|
349
|
+
timeChange =
|
|
350
|
+
"<span>🌤️上午好,一日之计在于晨</span>";
|
|
351
|
+
else if (
|
|
352
|
+
date.getHours() >= 11 &&
|
|
353
|
+
date.getHours() < 13
|
|
354
|
+
)
|
|
355
|
+
timeChange =
|
|
356
|
+
"<span>☀️中午好,该摸鱼吃午饭了</span>";
|
|
357
|
+
else if (
|
|
358
|
+
date.getHours() >= 13 &&
|
|
359
|
+
date.getHours() < 15
|
|
360
|
+
)
|
|
361
|
+
timeChange =
|
|
362
|
+
"<span>🕞下午好,懒懒地睡个午觉吧</span>";
|
|
363
|
+
else if (
|
|
364
|
+
date.getHours() >= 15 &&
|
|
365
|
+
date.getHours() < 16
|
|
366
|
+
)
|
|
367
|
+
timeChange =
|
|
368
|
+
"<span>🍵三点几啦,饮茶先啦</span>";
|
|
369
|
+
else if (
|
|
370
|
+
date.getHours() >= 16 &&
|
|
371
|
+
date.getHours() < 18
|
|
372
|
+
)
|
|
373
|
+
timeChange =
|
|
374
|
+
"<span>🚶♂️即将下班,记得按时吃饭~</span>";
|
|
375
|
+
else if (
|
|
376
|
+
date.getHours() >= 18 &&
|
|
377
|
+
date.getHours() < 19
|
|
378
|
+
)
|
|
379
|
+
timeChange =
|
|
380
|
+
"<span>🌇夕阳无限好,只是近黄昏</span>";
|
|
381
|
+
else if (
|
|
382
|
+
date.getHours() >= 19 &&
|
|
383
|
+
date.getHours() < 24
|
|
384
|
+
)
|
|
385
|
+
timeChange =
|
|
386
|
+
"<span>🌔晚上好,夜生活嗨起来</span>";
|
|
387
|
+
else
|
|
388
|
+
timeChange =
|
|
389
|
+
"🌌夜深了,早点休息,少熬夜";
|
|
310
390
|
|
|
311
|
-
|
|
312
|
-
|
|
391
|
+
WelcomeInfo &&
|
|
392
|
+
(WelcomeInfo.innerHTML = `
|
|
313
393
|
欢迎来自 <strong>${address}</strong> 的小伙伴🍂<br>
|
|
314
394
|
<strong>${welcome_info}!</strong><br>
|
|
315
395
|
您距离 <strong>Elykia</strong> 约有 <strong>${dist}</strong> 公里!<br>
|
|
@@ -319,6 +399,6 @@ const elykia = {
|
|
|
319
399
|
};
|
|
320
400
|
|
|
321
401
|
// 页面加载后执行
|
|
322
|
-
document.addEventListener(
|
|
402
|
+
document.addEventListener("DOMContentLoaded", () => {
|
|
323
403
|
elykia.setWelcome_info();
|
|
324
|
-
});
|
|
404
|
+
});
|