Вопрос по – Нажмите кнопку, если на странице есть текст с iMacros

3

Я пытаюсь использовать iMacros с Firefox, чтобы нажимать кнопку ОТМЕНА ТОЛЬКО, если этот код существует на странице ...

<small class="follow-status">follows you</small>

Если вышеперечисленное не существует в исходном коде страницы, он запустит этот код iMacros ...

TAG POS=1 TYPE=DIV ATTR=TXT:UnFollow

Из того, что я прочитал, нет синтаксиса типа if / else, но вы можете запустить Javascript с помощью

EVAL("Javascript code here")

Если кто-нибудь знает, как я мог это сделать, я мог бы действительно использовать помощь

Вы имеете в виду & quot; Если вышеEXIST в исходном коде страницы он будет запускать этот код iMacros ... & quot ;, верно? ace

Ваш Ответ

2   ответа
7

чтобы сделать заявление If, но сначала вы должныSET !ERRORIGNORE YES для этого макроса. Затем:

SET EXTRACT NULL
'if this exist you extract the text(even if you know it)
'if doesn't exist should return error but we turned that off; Extract remains Null
TAG POS=1 TYPE=SMALL ATTR=TXT:follows<SP>you EXTRACT=TXT
SET !VAR1 EVAL("var text=\"{{!EXTRACT}}\"; if(text==\"follows you\") text = \"jibber\";else text = \"UnFollow\";text;")
'this one executes if the text is right, if not should give error but we turned that off
TAG POS=1 TYPE=DIV ATTR=TXT:{{!VAR1}}
у меня была похожая проблема, теперь я знаю, как это сделать
2

run();
function run() {
  var exists = doesElementExist();
  alert('element exists? ' + exists);
  if (exists) {
    iimPlay('CODE: TAG POS=1 TYPE=DIV ATTR=TXT:UnFollow');
  }
  else {
    // do something else here
  }
}

// test if element exists
function doesElementExist() {
  iimDisplay('looking for small element with class "follow-status" on page');
  var code = iimPlay('CODE: SET !TIMEOUT_TAG 1\n'
                     + 'TAG POS=1 TYPE=SMALL ATTR=CLASS:follow-status EXTRACT=TXT');
  if (code !==1) {
    return false;
  }
  var extract = iimGetLastExtract();
  if (extract === '#EANF#') {
    return false;
  }
  return true;
}

Похожие вопросы