1/** 2 * è¿å ¥ç½ç«æä¸ä¸æ¬¡ç»å½çæ¶é´ 3 * @type {number} 4 */ 5let lastLoginTime = new Date().getTime(); 6 7/** 8 * ç»å½å 许çéè¯¯æ¬¡æ° 9 * @type {number} 10 */ 11let loginCount = 3; 12 13/** 14 * ç»å½éè¯¯çæºä¼å¢å é´éæ¶é´ 15 * @type {number} é´é 毫ç§å¼ 16 */ 17let loginCountAddTime = 60000; 18 19/** 20 * æ¯å¦è·³è½¬è¿å¯ç ç³è¯çé¢ 21 * @type {boolean} 22 */ 23let isToAppear = false; 24 25/** 26 * éä½ç»å½è´¦æ· 27 */ 28function lockLoginAccount() { 29 if (--loginCount <= 0) { 30 if (!isToAppear) { 31 // 妿æ¯ç¬¬ä¸æ¬¡è¢«é å°± 跳转 32 window.open("appealPassword.html"); 33 isToAppear = true; 34 } 35 const nowLT = loginCountAddTime; 36 const interval = setInterval(() => { 37 let number = loginCountAddTime - 1000; 38 const b = number <= 0; 39 const res_show = document.getElementById('login_userName_show') 40 if (res_show !== undefined) { 41 res_show.innerText = b ? '' : `${number / 1000} ç§ä¹åå¯éæ°ç»å½!` 42 } 43 if (b) { 44 loginCount = 3 45 number = nowLT << 1; 46 clearInterval(interval) 47 } 48 loginCountAddTime = number; 49 }, 1000); 50 } 51} 52 53/** 54 * èæ¯å¾çcss 55 * @type {{"background-repeat": string, "background-size": string, "background-position": string}} 56 */ 57const backImageCssUniversal = { 58 "background-repeat": "no-repeat", 59 "background-size": "cover", 60 "background-position": "center" 61}; 62 63/** 64 * æç §ç»å®ç css json é ç½®æ´æ° cssæ ·å¼ 65 * @param e å ç´ 66 * @param css css json é ç½® 67 */ 68function setStyle(e, css) { 69 for (let cssKey in css) { 70 e.style[cssKey] = css[cssKey]; 71 } 72}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.