2015-11-07 79 views
0

FF 42.0/iMacros都为FF BUILD = 8940826/2.8GHz的8核心2008年初的MacPro/OSX 10.8.2的iMacros:查找帧按钮是在没有按下按钮

我有一个js函数发现包含给定按钮的帧并返回帧号。

function findFrame() 
{ 

    var frameCheck = "CODE:"; 
    frameCheck = "SET !TIMEOUT_STEP 0"; 
    frameCheck+= "FRAME F={{i}}" + "\n"; 
    frameCheck+= "TAG POS=1 TYPE=BUTTON ATTR=DATA-LOG-CLICK:add-button" + "\n"; 

    frame=1; 

    for(i=1;i<=25;i++){ 
     iimSet("i",i) 

    //if the result of the macro is true save frame number and break 
    if(iimPlay(frameCheck)==true){ 

     frame=i; 
     break; 
    } 
    } 
    //return frame number 
    return frame; 


} 

不过,也有一些事情我想一旦我发现它是框架之内做的,所以我想分开按钮按下搜索,这样就可以把按钮按到一起的宏与其他事情需要在该框架中发生。

我已经能够挖掘一下关于寻找按钮的所有示例,也会按下该按钮。我假定这只是该行需要改变:

frameCheck+= "TAG POS=1 TYPE=BUTTON ATTR=DATA-LOG-CLICK:add-button" + "\n"; 

,但我不知道如何寻找的东西不存在与它进行交互。

回答

1
ret=iimPlayCode("TAG POS=1 TYPE=BUTTON ATTR=DATA-LOG-CLICK:add-button CONTENT=EVENT:MOUSEOVER"); 
if (ret == false) 
    // not found 
else 
    // found 

第二类是使用事件悬停鼠标。 :D

+0

工程就像一个魅力。 – gregorio

0

举个例子,你可以搜索的东西存在,而不以这种方式与它交互:

iimPlayCode("TAG POS=1 TYPE=BUTTON ATTR=DATA-LOG-CLICK:add-button EXTRACT=TXT"); 
if (iimGetExtract() == "#EANF#") 
    // not found 
else 
    // found 
+0

嗯......这将返回错误的(过早的)帧数,我现在正在处理网站。我不得不深入挖掘原因,但CONTENT = EVENT:MOUSEOVER正在登陆。对于某些选项在某些情况下比其他选项可能更好地工作还不够熟悉。 – gregorio

+0

根据你的函数逻辑,我的代码必须正确地工作,具有积极的条件:'... if(iimGetExtract()!=“#EANF#”){// found} else {// not found}'。然而'EVENT:MOUSEOVER'的方式似乎更好。 – Shugar