Правила оформления сообщений в данном топике:
Адрес сайта и страницы, на которой возникла проблема, размещается в тегах [ spoiler][ noindex]http://адрес_сайта/название_страницы[ /noindex][ /spoiler]
Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [ spoiler][ code]ваш код[ /code][ /spoiler]
или выложите на сайт «Pastebin».
При размещении объемных материалов, используйте тег "Spoiler" - [ spoiler]ваш текст[ /spoiler]
или выложите на сайт «Pastebin».
Размещать изображения в открытом виде. Для размещения скриншотов и других изображений, используйте тег "Spoiler" - [ spoiler][ img]http://ссылка_на_изображение[ /img][ /spoiler]
.
«Можно ответить на любой вопрос, если вопрос задан правильно.»
Платон
«Не каждый вопрос заслуживает ответа.»
Сайрус
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
dim222
а чем задержка в самом скрипте не устраивает?
Добавлено 22-05-2017 16:30:34
ну или такой вариант: Запуск макроса в ранее открытом браузере
Отредактировано InfSub (22-05-2017 16:30:34)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
InfSub
задержка в скрипте не помогает. в ветке в которой вы указали данный код работает только без указания профиля.Можно ли в батнике прописать сначала открытие FF,задержка,запуск скрипта?
Отсутствует
да, можно. есть два варианта, в зависимости от того какая ОС:
1. ping -n секунды 127.0.0.1 > NUL
2. timeout секунды > NUL
подробнее в интернетах : )
Отсутствует
dim222
удалено, избыточное цитирование
Так можно же менять и без закрытии браузера, зачем такие сложности.
InfSub
iMacros скрипты на заказ!
Отсутствует
Здравствуйте! Есть скрипт(запуск скрипта по времени), как только время совпадает, скрипт запускается, но есть нюанс, после совпадения скрипт не останавливается, то-есть функция break; не работает. Исправьте пожалуйста. Спасибо.
while(true){ var t = new Date(); var h = t.getHours(); var m = t.getMinutes(); var res = [h,m]; var arr = [1]; arr[1] = ['10,32','22,15']; for (var i=0;i<arr.length;i++) { for (var j=0;j<arr[i].length;j++) { if (res == arr[i][j]){ iimPlayCode("URL GOTO=imacros://run/?m=1.js"); // alert("hello,word!"); break; }; }; }; iimPlay('CODE:WAIT SECONDS=2'); };
Отредактировано taniks (24-05-2017 10:52:45)
Отсутствует
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
удалено, избыточное цитирование, п.п. 2.9
InfSub
Я извиняюсь, но либо вы меня не поняли, либо я вас, я в языке не силён, как реализовать правильно, данный скрипт.
InfSub
Отсутствует
либо я вас
Не рекомендуется запускать js из js, если вы не понимаете принципа работы данной конструкции и не готовы отлавливать баги, связанные с ней. Для тех, кто все же, решил попробовать, могу сказать только одно, не ждите от данного метода - последовательного запуска из одного js-скрипта - нескольких js-скриптов, его нет и не будет.
https://forum.mozilla-russia.org/viewto … 15#p737115
Codepg пишеткорректно работает исключительно вариант iim из iim?
корректно работает вызов iim, но не только из iim, но и из js, собственно для чего js и используется
https://forum.mozilla-russia.org/viewto … 19#p718719
Romstar08
Объедините все в 1 js файл и не занимайтесь ерундой, вида: запуск js из js
https://forum.mozilla-russia.org/viewto … 00#p721700
bukinzlyukin пишетВ чем может быть проблема?
в том, что js из js, описанным вами способом - корректно не работает
работает только последовательно: из 1 - 2, из 2 - 3 и т.д. (опять же, не всегда)
Отредактировано InfSub (24-05-2017 11:42:24)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Romstar08
Объедините все в 1 js файл и не занимайтесь ерундой, вида: запуск js из js
Теперь понятно Спасибо. А можно пример ?
Отсутствует
taniks
пример чего? вы не можете запихнуть код из файла 1.js в ваш код вместо строки:
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
удалено, избыточное цитирование, п.п. 2.9, как правильно отвечать в теме - описано тут
Пробовал, не работает, вы мне пожалуйста объясните, почему функция break; в моём примере, не останавливает сценарий ?
InfSub
Отредактировано taniks (24-05-2017 12:15:33)
Отсутствует
почему функция break; в моём примере, не останавливает сценарий ?
я вам уже ответил почему, здесь
вы что сказали?:
Теперь понятно
в чем вопрос? мне вам в третий раз сказать что проблема в том, что вы запускаете js-скрипт из js-скрипта? хотите подробностей - читайте, ссылки даны
Пробовал, не работает
отлично, бригада уже выехала - будут усиливать ваш телепатический дар, так как, до нас подробности вашего кода, который не работает и находится, в данный момент в файле 1.js - не долетели
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Как то злобно вы реагируете на всё Суть проблемы в том, что цикличность, не смотря на команду break, цикличность продолжает работать, а мне надо, чтобы при нахождении определённого слова, всё остановилось(скрипт).
while(true){ var t = new Date(); var h = t.getHours(); var m = t.getMinutes(); var res = [h,m]; var arr = [1]; arr[1] = ['15,23','22,15']; for (var i=0;i<arr.length;i++) { for (var j=0;j<arr[i].length;j++) { if (res == arr[i][j]){ var macro1; macro1 = "CODE:"; macro1 += "SET !ERRORIGNORE YES" + "\n"; macro1 += "SET !TIMEOUT_PAGE 60" + "\n"; iimPlay(macro1) var text_12 ='1', text_31 ='4', text_32 ='5'; for (;;){ if(iimPlayCode('SEARCH SOURCE=TXT:"'+text_32+'"')>0); if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"'+text_12+'"')>0){break;} if(iimPlayCode('SEARCH SOURCE=TXT:"'+text_31+'"')>0); else iimPlayCode('SET !TIMEOUT_PAGE 60\nONDIALOG POS=1 BUTTON=OK CONTENT=\nREFRESH'); { }} }; }; }; iimPlay('CODE:WAIT SECONDS=0'); };
Отсутствует
Как то злобно вы реагируете на всё
потому что надоело в тысячный раз цитировать правила форума и темы iMacros, задавать наводящие вопросы, чтобы вопрошающий соизволил предоставить информацию по вопросу, достаточную для ответа на его вопрос, а не из серии: "помогите, ни чего не работает"
следующий код, совершенно бесполезен и не на что не влияет в таком варианте использования:
var macro1; macro1 = "CODE:"; macro1 += "SET !ERRORIGNORE YES" + "\n"; macro1 += "SET !TIMEOUT_PAGE 60" + "\n"; iimPlay(macro1);
не смотря на команду break
какую? в первом вашем посте - присутствовал break которого в данном коде нет, но есть другой... и о каком вы говорите?
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
dim222
Так можно же менять и без закрытии браузера, зачем такие сложности.
Я не знаю как это сделать.Я думал загрузка необходимых параметров происходит при открытии браузера.
Отредактировано dim222 (24-05-2017 17:47:54)
Отсутствует
какую? в первом вашем посте - присутствовал break которого в данном коде нет, но есть другой... и о каком вы говорите?
Вы поймите, мне надо чтобы скрипт закончил свою работу, когда найдёт слово
Отсутствует
taniks
какой цикл должен быть прерван? while?
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
InfSub
задержка в скрипте не помогает. в ветке в которой вы указали данный код работает только без указания профиля.Можно ли в батнике прописать сначала открытие FF,задержка,запуск скрипта?
Решил (не без помощи) с помощью .html (сначала запуститься мозилла с открытой вкладкой и через 5 сек запустится скрипт и все фильтры будут работать)
Отредактировано dim222 (24-05-2017 18:51:01)
Отсутствует
dim222
так вроде в ссылке на тему, что я давал выше, приведено аналогичное решение, только там вопрос стоял - как запустить уже в открытой мозилле скрипт iMacros'а из cmd
но суть - не меняет - запустить батником мозиллу, подождать передать ей параметром скрипт
Добавлено 24-05-2017 19:23:58
taniks
если в двух словах, то break прерывает текущий цикл, а не тот что выше
для того, чтобы прервать цикл расположенный выше, перед циклом ставится метка, которая передается break и показывает интерпретатору, из какого цикла надо выйти
Отредактировано InfSub (24-05-2017 19:26:08)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
]taniks[/b]
какой цикл должен быть прерван? while?
Да, while, исправьте пожалуйста мой скрипт, как надо, просто в этом я новичок.
Отсутствует
но суть - не меняет - запустить батником мозиллу, подождать передать ей параметром скрипт
Возможно моя кривота рук. Но у меня так и не получилось запустить данным методом (по ссылке) скрипт с задержкой. Там кстати указано про костыли с профилем.
Отредактировано dim222 (24-05-2017 21:05:15)
Отсутствует
Можно ли iim или js нажимать на кнопку пауза в имакросе?
Короче я с одного js вызываю другой js если при этом нажимаю кнопку паузу то всё отлично работает,а если не ставлю на паузу то скрипт дрожит как то стрёмно так работать.
А разделил один скрипт js на два js потому что если браузер свернуть,то скрипт не находил элементы на странице,а когда разделил один скрипт на две части то работает в свёрнутом и развёрнутом браузере.
Отсутствует
Отсутствует
Доброго времени суток.
Есть такой код для поиска фрейма (взят из соседней темы про распознавание капчи):
for(w=1; w<=30; w++){ if(iimPlayCode('SET !REPLAYSPEED FAST\nSET !TIMEOUT_STEP 0\nFRAME F='+w+'\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>P" BUTTON=0')>0){ iimPlayCode('FRAME F='+w+'\nEVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="'+comment+'"'); iimPlayCode('FRAME F=0\nEVENT TYPE=CLICK SELECTOR="#thread-reply-form>P>BUTTON" BUTTON=0'); break;}}
Отсутствует
да, можно. нужно избавиться от EVENT команд.
Отсутствует