2014-02-08 66 views
0

所以現在我的腳本使用iMacros來播放它。這個文件的名字叫做test.jsiMacros腳本運行不正常?

var m; 
m ="CODE:"; 
m+="URL GOTO=http://tppcrpg.net/map.php?Map=11"; 

iimPlay(m); 

for (var i = 0; i < 100; i++) 
{ 
    var c; 
    c = "CODE:"; 
    c+= "CLICK X=679 Y=459"; 

    iimPlay(c); 

    var macro; 

    macro ="CODE:"; 
    macro +="SET !ERRORIGNORE YES"+"\n"; 
    macro +="TAG POS=1 TYPE=HTML ATTR=TXT:* EXTRACT=TXT"+"\n"; 

    iimPlay(macro); 

    if(iimGetLastExtract().search("Belong")!=-1) 
    { 
     alert("Found the text");   
    } 
} 

什麼我想在這裏做這個宏是去一個鏈接,然後繼續單擊某一座標。然後,如果它發現文字Belong它會給我一個警告框。


現在的問題是,如果我點擊了正常Play按鈕(未Play Loop)它不是第二次迭代後平穩運行的iMacros(被點擊座標)。

它能夠轉到鏈接並使用Click命令,但它會在之後保持淡入淡出狀態,並且不會在網頁上做任何事情。

相反,它的運行速度非常快,但它並沒有在網頁上進行任何宏觀操作。

沒有運行時錯誤,循環結束,宏將停止,但它似乎不能再與網頁進行交互。

我在做什麼錯?

回答

1

而不是搜索嘗試使用indexOf。 indexOf更適合在網頁上搜索某些內容。

而不是座標嘗試使用宏點擊的地方的HTML屬性。如果座標與過程相關,那麼最好使用HTML屬性。座標可以是精確的,並且會錯過目標。

+0

感謝它的工作:)我能夠順利運行我的宏。我把'Click'改成了'HTML Element',我用'indexOf'。我發現點擊速度非常快,所以這就是爲什麼它很快就無能爲力。 但我有一個問題。在JavaScript中是否有這樣的稱爲「秒錶」的東西?我想知道如何快速找到文本。 – puretppc

+1

http://wiki.imacros.net/iimGetStopwatch使用Wiki進行參考。它有很多有用的例子。 – macroscripts

+1

哦,我明白了。如果你能夠再次幫助我,我會遇到同樣的問題。 (http://stackoverflow.com/questions/21649152/why-am-i-infinitely-looping-and-not-doing-anything-on-the-webpage)謝謝,雖然:)你是這個真正的專家我得說。 – puretppc