这里有一些带有Javascript问题的imacro,但没有任何东西给我我需要的东西......我尝试了这个问题:Imacros: Random wait time?这个问题:How to loop only a series of steps in iMacros(这很有帮助,但现在我所拥有的是一个小马车)。我无法弄清楚为什么这不起作用......
我想做的是使用imacros关注Tumblr上的人。我添加了Math.random()
函数,因为我希望它能够在0到11秒内随机选择一个跟随新人的时间。
我只想让imacro运行这部分代码一次,因为它只需要运行一次:
window.location = "URL GOTO = https://www.tumblr.com/search/pony/recent" + "\n";
var rand = "Math.random()*7 + 5";
var macro = "CODE:SET !REPLAYSPEED FAST" + "\n";
var macro = "CODE:SET !ERRORIGNORE YES" + "\n";
macro += "TAG POS={{i}} TYPE=I ATTR=CLASS:icon_view_list&&TXT:" + "\n";
然后我希望它循环这部分代码(实际的后续步骤):
macro += "TAG POS={{i}} TYPE=DIV ATTR=TITLE:Like&&CLASS:post_control<SP>like&&TXT: " + "\n";
macro += "WAIT SECONDS={{rand}}";
它使用它循环它:
for(var i=0;i<100;i++)
{
iimDisplay(i);
iimSet("i", i);
iimSet("rand", rand);
iimPlay(macro);
}
除了以下代码行之外,这种情况很有效:macro += "TAG POS={{i}} TYPE=I ATTR=CLASS:icon_view_list&&TXT:" + "\n";
和var rand = "Math.random()*7 + 5;"
似乎无法正常工作。代码的第一部分是使它选择&#34;列表视图&#34;而不是&#34;网格视图&#34;在tumblr因为我无法让网格视图起作用(如果有人有任何见解,为什么它不起作用,那将是伟大的,但不是一个大问题)。代码的第二部分没有正常工作,因为它总是将rand
设置为11秒...所以看起来Math.random()
函数不能正常工作而我不能搞清楚。
这是我的整个代码:
window.location = "URL GOTO = https://www.tumblr.com/search/pony/recent" + "\n";
var rand = "Math.random()*7 + 5";
var macro = "CODE:SET !REPLAYSPEED FAST" + "\n";
var macro = "CODE:SET !ERRORIGNORE YES" + "\n";
macro += "TAG POS={{i}} TYPE=I ATTR=CLASS:icon_view_list&&TXT:" + "\n";
macro += "TAG POS={{i}} TYPE=DIV ATTR=TITLE:Like&&CLASS:post_control<SP>like&&TXT: " + "\n";
macro += "WAIT SECONDS={{rand}}";
for(var i=0;i<100;i++)
{
iimDisplay(i);
iimSet("i", i);
iimSet("rand", rand);
iimPlay(macro);
}
答案 0 :(得分:0)
var rand = "Math.random()*7 + 5";
返回一个字符串,当然是
尝试:
window.location = "URL GOTO = https://www.tumblr.com/search/pony/recent" + "\n";
var macro = "CODE:SET !REPLAYSPEED FAST" + "\n";
macro += "CODE:SET !ERRORIGNORE YES" + "\n";
macro += "TAG POS={{i}} TYPE=I ATTR=CLASS:icon_view_list&&TXT:" + "\n";
macro += "TAG POS={{i}} TYPE=DIV ATTR=TITLE:Like&&CLASS:post_control<SP>like&&TXT: " + "\n";
macro += "WAIT SECONDS={{rand}}";
for (var i = 0; i < 100; i++) {
var rand = Math.random() * 7 + 5; //<--rand should be inside the loop
iimSet("i", i);
iimSet("rand", rand);
iimPlay(macro);
iimDisplay(i);
}
已编辑以将兰特移动到循环内。对不起,我的坏。