【问题标题】:how to make page scroll with random pixels and random direction如何使页面滚动随机像素和随机方向
【发布时间】:2017-11-20 13:47:24
【问题描述】:

在 imacros 中,我使用 JavaScript 语言,下面是一些代码:

var filesource = imns.Dialogs.browseForFileOpen("Enter file location");
if (filesource)
    fs = filesource.path;
var y =  prompt("start","2");
var z =  prompt("end","20"); 

y=parseInt(y);
z=parseInt(z);

posting="CODE:"+"\n"
posting+="SET !ERRORIGNORE YES"+"\n"
posting+="SET !DATASOURCE {{filesource}}"+"\n"
posting+="SET !DATASOURCE_LINE {{LOOP}}"+"\n"
posting+="SET !WAITPAGECOMPLETE YES"+"\n"
posting+="URL GOTO=https://www.examples.com"+"\n"
posting+="TAG POS=1 TYPE=SPAN ATTR=CLASS:selectBox-arrow"+"\n"
posting+="TAG POS=1 TYPE=SELECT FORM=NAME:frm_add_product ATTR=NAME:p_dep_1 CONTENT=%0"+"\n"
posting+="WAIT SECONDS=2"+"\n"

posting+="TAG POS=1 TYPE=SELECT FORM=NAME:frm_add_product ATTR=NAME:p_menu_id CONTENT=${{!COL23}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:FILE FORM=ID:frm-add-product ATTR=accept:image/jpeg,image/png CONTENT={{!COL11}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:FILE FORM=ID:frm-add-product ATTR=accept:image/jpeg,image/png CONTENT={{!COL12}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:FILE FORM=ID:frm-add-product ATTR=accept:image/jpeg,image/png CONTENT={{!COL13}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:FILE FORM=ID:frm-add-product ATTR=accept:image/jpeg,image/png CONTENT={{!COL14}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:FILE FORM=ID:frm-add-product ATTR=accept:image/jpeg,image/png CONTENT={{!COL15}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:frm-add-product ATTR=ID:p-name CONTENT={{!COL1}}"+"\n"
posting+="TAG POS=1 TYPE=TEXTAREA FORM=ID:frm-add-product ATTR=ID:p-description CONTENT={{!COL6}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:frm-add-product ATTR=ID:p-price CONTENT={{!COL3}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:frm-add-product ATTR=ID:p-weight CONTENT={{!COL4}}"+"\n"
posting+="TAG POS=1 TYPE=INPUT:RADIO FORM=ID:frm-add-product ATTR=ID:p-condition-new"+"\n"
posting+="TAG POS=1 TYPE=SPAN ATTR=CLASS:selectBox-arrow"+"\n"
posting+="TAG POS=1 TYPE=SELECT FORM=NAME:frm_add_product ATTR=NAME:p_dep_1 CONTENT=${{!COL8}}"+"\n"
posting+="WAIT SECONDS=2"+"\n"
posting+="TAG POS=2 TYPE=SPAN ATTR=CLASS:selectBox-arrow"+"\n"
posting+="TAG POS=1 TYPE=SELECT FORM=NAME:frm_add_product ATTR=NAME:p_dep_2 CONTENT=${{!COL9}}"+"\n"
posting+="WAIT SECONDS=2"+"\n"
posting+="TAG POS=3 TYPE=SPAN ATTR=CLASS:selectBox-arrow"+"\n"
posting+="TAG POS=1 TYPE=SELECT FORM=NAME:frm_add_product ATTR=NAME:p_dep_3 CONTENT=${{!COL10}}"+"\n"
posting+="WAIT SECONDS=2"+"\n"
posting+="TAG POS=1 TYPE=SELECT FORM=NAME:frm_add_product ATTR=NAME:p_menu_id CONTENT=$**<SP>Tambah<SP>Etalase"+"\n"
posting+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:frm-add-product ATTR=ID:p-menu-name CONTENT={{!COL16}}"+"\n"
posting+="TAG POS=1 TYPE=SELECT FORM=NAME:frm_add_product ATTR=NAME:p_menu_id CONTENT=${{!COL16}}"+"\n"
posting+="TAG POS=1 TYPE=a ATTR=ID:invenagebox"+"\n"
posting+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:frm-add-product ATTR=ID:invenage-value CONTENT={{!COL5}}"+"\n"
posting+="WAIT SECONDS=2"+"\n"
posting+="TAG POS=1 TYPE=BUTTON FORM=ID:frm-add-product ATTR=ID:s-save-prod"+"\n"
posting+="WAIT SECONDS=10"+"\n"
posting+="TAG POS=1 TYPE=ul ATTR=class:square<sp>break-word extract=txt"+"\n"
posting+="set nama EVAL(\"'{{!EXTRACT}}'.replace('Anda telah berhasil memasukkan produk ','')\")"+"\n"
    for (i=y;i<=z;i++){
    iimSet("cat1",cat1);
        iimSet("cat2",cat2);
        iimSet("cat3",cat3); 
        iimSet("ETA",eta);
        iimSet("filesource",fs);
        iimSet("LOOP",i); 
        iimPlay(posting);
        
    } 

所以重点是我想让页面以随机方向和随机像素滚动。我试过使用URL GOTO=javascript:window.scrollBy(0,2000), but it didn't work.

注意:我使用 Excel 逗号分隔值 (CSV) 作为代码源,我想在 Excel 工作表的每一行添加一些随机数,但它不起作用,因为 URL GOTO=javascript:window.scrollBy(0,2000) 这不起作用.

【问题讨论】:

    标签: javascript excel imacros


    【解决方案1】:

    代替

    URL GOTO=javascript:window.scrollBy(0,randomNumber)
    

    你可以试试这个代码:

    ' your value here '
    SET maxScroll 50
    SET keys EVAL("var k = []; for (i = 0; i <= 1 + Math.floor(Math.random()*{{maxScroll}}); i++) k.push(40); k;")
    EVENTS TYPE=KEYPRESS SELECTOR=* KEYS="[{{keys}}]"
    

    因此您不需要在 excel 表的每一行中添加一些随机数。


    用 JavaScript 封装:

    // ...
    posting += 'SET maxScroll 50' + "\n";
    posting += 'SET keys EVAL("var k = []; for (i = 0; i <= 1 + Math.floor(Math.random()*{{maxScroll}}); i++) k.push(40); k;")' + "\n";
    posting += 'EVENTS TYPE=KEYPRESS SELECTOR=* KEYS="[{{keys}}]"' + "\n";
    // ...
    

    【讨论】:

    • 我在代码的每一行前面添加了一些“posting+=”,然后我运行它,它说“SET 命令的格式错误,第 11 行(错误代码:-910)”第 11 行是“var y = prompt("start","2");"。我不知道为什么
    • 我也不知道为什么,因为你没有显示你的代码。不管怎样,试试我的更新。
    • omfg!!!!它的工作,非常感谢,在我的代码中我仍然输入“而不是',所以我有双”。谢谢哥们,我现在很开心!
    猜你喜欢
    • 1970-01-01
    • 2019-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-21
    相关资源
    最近更新 更多