-
Notifications
You must be signed in to change notification settings - Fork 0
/
赛意考勤自动填工时.js
69 lines (63 loc) · 1.9 KB
/
赛意考勤自动填工时.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
// ==UserScript==
// @namespace https://my.sieiot.com/attcenter/kimver
// @name 赛意考勤自动填工时
// @version 0.1
// @description 自动填充工时按钮
// @author kimver
// @match https://my.chinasie.com/attcenter/*
// @icon https://my.sieiot.com/bpm/favicon.ico
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
var btn = document.createElement("button");
btn.innerHTML = '自动填充工时';
btn.style = 'position: absolute; z-index: 10000;right: 50%;top: 20px;background:#000;color: #fff;padding: 5px 10px;border-radius: 10px;'
btn.classList.add('__SIE_BTN__')
setInterval(() => {
var fillWorkL = document.querySelector('.fillWorkL')
var btn1 = document.body.querySelector('.__SIE_BTN__')
if (fillWorkL) {
!btn1 && document.body.appendChild(btn);
} else {
btn1 && document.body.removeChild(btn1);
}
}, 500)
btn.onclick = function() {
try {
var list = document.querySelectorAll('.fillWorkR .item-content .item-box')
var input = list[1].querySelector('input')
let lastValue = input.value
input.value = 8
let event = new Event("input", {
bubbles: true
});
// React15
event.simulated = true;
// React16 内部定义了descriptor拦截value,此处重置状态
let tracker = input._valueTracker;
if (tracker) {
tracker.setValue(lastValue);
}
input.dispatchEvent(event);
var select = list[2].querySelector('svg').parentNode
select.click()
setTimeout(() => {
setTimeout(() => {
document.querySelector('.FreeScrollbar-container').firstChild.click()
setTimeout(() => {
select = list[3].querySelector('svg').parentNode
select.click()
setTimeout(() => {
document.querySelector('.FreeScrollbar-container')
.firstChild.click()
}, 50)
}, 50)
}, 50)
}, 50)
} catch (e) {
console.error(e)
}
}
})();