teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

コードの追加

2019/10/16 06:33

投稿

nemui_00
nemui_00

スコア5

answer CHANGED
@@ -1,1 +1,22 @@
1
- setIntervalを使用するよう変更したところうまくいきました。
1
+ 以下のようにsetIntervalを使用するよう変更したところうまくいきました。
2
+ ```html
3
+ var array = new Array('12345', '{ENTER}', '{F5}', '{ENTER}');
4
+ var cnt = 0;
5
+ var hoge = setInterval(function() {
6
+ var obj = new ActiveXObject("WScript.Shell");
7
+ obj.AppActivate("データ入力画面");
8
+ sleep(1000);
9
+ obj.SendKeys(array[cnt]);
10
+ obj = null;
11
+ cnt++;
12
+ //終了条件
13
+ if (cnt >= array.length) {
14
+ clearInterval(hoge);
15
+ }
16
+ }, 1000);
17
+ function sleep(waitMsec) {
18
+ var startMsec = new Date();
19
+ // 指定ミリ秒間だけループさせる
20
+ while (new Date() - startMsec < waitMsec);
21
+ }
22
+ ```