Skip to content

Commit 4455667

Browse files
committed
更新
1 parent 4b8e553 commit 4455667

2 files changed

Lines changed: 55 additions & 42 deletions

File tree

Script/jd_hd.js

Lines changed: 54 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ https://active.jd.com/forever/btgoose url script-response-body jd_hd.js
1313
hostname = *.jd.com, *.*.jd.com
1414
*/
1515
const $ = new Env('京东助手');
16-
const clickClassNames = $.getData('id77_vConsole_clickClassNames') || '';
17-
const clickClassNames2 = $.getData('id77_vConsole_clickClassNames2') || '';
16+
const clickClassName = $.getData('id77_vConsole_clickClassName') || '';
17+
const clickClassName2 = $.getData('id77_vConsole_clickClassName2') || '';
1818
const clickInterval = $.getData('id77_vConsole_clickInterval') || 70; // ms
1919
const clickNum = $.getData('id77_vConsole_clickNum') || 1; // 点击次数
2020
const cancelDisabled =
@@ -304,8 +304,8 @@ try {
304304
$dom.addEventListener('click', () => {
305305
vConsole.show();
306306
vConsole.showTab("default");
307-
const $clickDoms = document.querySelectorAll("${clickClassNames}");
308-
console.info($clickDoms)
307+
const $clickDom = document.querySelector("${clickClassName}");
308+
console.info($clickDom);
309309
})
310310
311311
toolList.push({
@@ -314,9 +314,9 @@ try {
314314
onClick: function (event) {
315315
vConsole.hide();
316316
// vConsole.showTab("network");
317-
const $clickDoms = document.querySelectorAll("${clickClassNames}");
317+
const $clickDom = document.querySelector("${clickClassName}");
318318
319-
clickTask($clickDoms);
319+
clickTask($clickDom);
320320
321321
},
322322
});
@@ -345,36 +345,19 @@ try {
345345
vConsole.addPlugin(JDCKPlugin);
346346
}
347347
348-
if("${clickClassNames}".includes('.') || "${clickClassNames}".includes('#')) {
348+
if("${clickClassName}".includes('.') || "${clickClassName}".includes('#')) {
349349
vConsole.addPlugin(QGPlugin);
350350
}
351351
352352
setTimeout(() => {
353353
console.log(window.location.href);
354354
355355
const $btns = document.querySelectorAll("button");
356-
if (${cancelDisabled}) {
357-
for (let n = 0; n < $btns.length; n++) {
358-
const $btn = $btns[n];
359-
if (${cancelDisabled}) {
360-
$btn.removeAttribute('disabled');
361-
}
362-
}
363-
}
356+
btnTask($btns);
364357
365-
const $clickDoms = document.querySelectorAll("${clickClassNames}");
358+
const $clickDom = document.querySelector("${clickClassName}");
359+
classNameTask($clickDom);
366360
367-
if ("${unClassName}" !== "" || "${inClassName}" !== "") {
368-
for (let n = 0; n < $clickDoms.length; n++) {
369-
const $element = $clickDoms[n];
370-
if ("${unClassName}" !== "") {
371-
$element.classList.remove("${unClassName}");
372-
}
373-
if ("${inClassName}" !== "") {
374-
$element.classList.add("${inClassName}");
375-
}
376-
}
377-
}
378361
379362
if ("${timingRunningTime}" !== "") {
380363
const date = new Date();
@@ -395,33 +378,63 @@ try {
395378
let needTask = new Date(taskDate) >= new Date() ? true : false;
396379
397380
if (needTask) {
398-
setTimeout(() => clickTask($clickDoms), new Date(taskDate).getTime() - Date.now());
381+
setTimeout(() => clickTask($clickDom), new Date(taskDate).getTime() - Date.now());
399382
}
400383
}
401384
402385
},3000);
403386
404387
}
405388
406-
function clickTask($clickDoms) {
407-
console.log($clickDoms);
389+
function clickTask($clickDom) {
390+
let $dom = $clickDom;
391+
async function* asyncGenerator() {
392+
let i = 0;
393+
while (i < Number(${clickNum}) && "${clickClassName2}" === "") {
394+
yield i++;
395+
}
396+
}
408397
409-
for (let n = 0; n < $clickDoms.length; n++) {
410-
const $element = $clickDoms[n];
398+
(async function() {
399+
for await (let num of asyncGenerator()) {
400+
let time = Number(${clickInterval}) * num;
401+
console.info("========" + num + "========");
402+
console.log($dom);
403+
404+
setTimeout(() => {
405+
btnTask($dom);
406+
classNameTask($dom);
407+
$dom.click();
408+
409+
if ("${clickClassName2}" !== "") {
410+
setTimeout(() => {
411+
const $dom2 = document.querySelector("${clickClassName2}");
412+
console.log($dom2);
413+
$dom2.click();
414+
});
415+
}
416+
}, time);
417+
}
418+
})();
411419
412-
let intervalId = setInterval(() => {
413-
$element.click()
414-
if ("${clickClassNames2}" !== "") {
415-
setTimeout(() => document.querySelector("${clickClassNames2}").click(), 77)
416-
}
417-
},${Number(clickInterval)});
420+
}
418421
419-
setTimeout(() => clearInterval(intervalId), ${
420-
(Number(clickNum) + 1) * clickInterval
421-
});
422+
function classNameTask ($dom) {
423+
if(!$dom) return;
422424
425+
if ("${unClassName}" !== "") {
426+
$dom.classList.remove("${unClassName}");
427+
}
428+
if ("${inClassName}" !== "") {
429+
$dom.classList.add("${inClassName}");
423430
}
424431
}
432+
433+
function btnTask ($dom) {
434+
if (${cancelDisabled}) {
435+
$dom.removeAttribute('disabled');
436+
}
437+
}
425438
</script>
426439
</html>
427440
`;

box.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
"val": "",
4040
"type": "text",
4141
"placeholder": "#id或div.class",
42-
"desc": "一定要包含id或class(#或.)"
42+
"desc": "规则同上;但设置后只能模拟点击一次"
4343
},
4444
{
4545
"id": "id77_vConsole_cancelDisabled",

0 commit comments

Comments
 (0)