2017-05-01 3 views
0

ChromeのiMacrosで現在の時間に基づいてランダムな遅延を設定しようとしています。複数のEvals - ChromeのImacros

は現在、私のコードは次のようになります。それはちょうど最初のevalを実行し、これが動作しない

SET delay EVAL("if (\"!NOW:hh\" == '11') '2<SP>+<SP>9'; else \"3<SP>+<SP>8\";") 
SET delay EVAL("if (\"!NOW:hh\" == '12') '1<SP>+<SP>10'; else \"3<SP>+<SP>8\";") 
SET delay EVAL("if (\"!NOW:hh\" == '13') '0<SP>+<SP>11'; else \"3<SP>+<SP>8\";") 

SET hour EVAL("var randomNumber=Math.floor(Math.random()*{{delay}}); randomNumber;") 

。これを1つの行にまとめる方法はありますか?

TL; DR:予め

if NOW:hh = '11' then '9 + 2' 
if NOW:hh = '12' then '10 + 1' 
if NOW:hh = '13' then '11 + 0' 
else '8 + 3' 

おかげ。

答えて

0

{{}}の使用を忘れないでください。

することはでき「他の場合」または「スイッチ」条件文:私は、現在の時刻に基づいてランダム遅延を設定しようとしていますJavaScript If...Else Statements

SET delay EVAL("if (\"{{!NOW:hh}}\" == '11') '2<SP>+<SP>9'; else if (\"{{!NOW:hh}}\" == '12') '10<SP>+<SP>1'; else if (\"{{!NOW:hh}}\" == '13') '11<SP>+<SP>0'; else \"3<SP>+<SP>8\";") 

PROMPT {{delay}} 

SET hour EVAL("var randomNumber=Math.floor(Math.random()*{{delay}}); randomNumber;") 

PROMPT {{hour}} 

私にはありません複雑なランダムな文がなぜ必要なのかを知っている。これで十分です:

SET delay("var randomNumber=Math.floor(Math.random()*{{!NOW:hh}} + 1); randomNumber;") 

PROMPT {{delay}} 
+0

ありがとうございます。 はい、本当に必要な以上に複雑です。主に私はChrome用にiMacrosを使用しているため、サイトの作成方法が原因です。 遅延時間を指定するには、datepickerでdivをターゲティングしています: 'タグセレクタ=" HTML>ボディ> DIV:nth-​​of-type(4)> DIV:nth-​​of-type(5) DIV:n番目の型(4)> DIV:n番目の型(6)> DIV:n番目の型(4)> DIV: ここで 'DIV:nth-​​of-type(8)= 6:00' 私はタイムゾーンで作業しています。 5時間先ですので、現地時間が11:00(6:00)の場合、遅れを6:00に設定したいとは思いません。 – Chamezz

関連する問題