如何正确javascript这些?

时间:2017-01-10 01:18:04

标签: javascript firefox imacros

我有这个.iim运行浏览器扩展imacros for firefox:

SET rndSecWait EVAL("180 + Math.floor(Math.random()*11)")
WAIT SECONDS={{rndSecWait}}

如何为.js文件设置相同的代码,我尝试使用此代码:

var macroStart; macroStart ="CODE:";
macroStart +="SET rndSecWait EVAL("180 + Math.floor(Math.random()*11)")" + "\n";
macroStart +="WAIT SECONDS={{rndSecWait}}" + "\n";

但是当我尝试运行它时,我收到此错误:SyntaxError:missing;在语句之前,第2行(错误代码:-991)

这个网站的愚蠢问题也许我不知道,但也许有人会帮助我,提前谢谢。

...问候

2 个答案:

答案 0 :(得分:0)

您的第一个代码在iMacros中运行,但第二个代码在Javascript解释器中运行(在iMacros内部)=>你需要逃避"在Javascript中使用\"像这样:

macroStart +="SET rndSecWait EVAL(\"180 + Math.floor(Math.random()*11)\")" + "\n";

答案 1 :(得分:0)

我更喜欢将Imacros脚本编码为.js脚本 - 这样可以提供更多功能。 复制以下代码并保存,例如作为code.js并从Imacros运行。 这个问题的解决方案,我编码:

    var wait_time = Math.floor(Math.random()*11) + 180;
    var url = "https://www.google.com";

    var visit_url = [
        'CODE:',
        'WAIT SECONDS=' + wait_time,
        'URL GOTO=' + url
    ].join('\n');

    iimPlay(visit_url);

对我来说运行正常:Firefox 35.0.1,iMacros for Firefox 8.9.7,Windows 7。 如果您有任何疑问 - 请询问。