1 (изменено: Gh0sTG0, 2018-11-15 14:14:43)

Тема: AHK: chrome.ahk как сделать цикл с PageInst.Evaluate?

Осваиваю замечательную штуку для хрома chrome.ahk
Уже научился в целом работать, очень сильно облегчает жизнь.
Но столкнулся с проблемой:

	PageInst := Chrome.GetPage(1)
	numEl := PageInst.Evaluate("document.getElementsByClassName('ClassName').length;").Value
	Loop %numEl%
	{
		No := A_Index
		No -= 1
		El := PageInst.Evaluate("document.getElementsByClassName('ClassName')[No].href;").Value
		MsgBox, % El
	}

Если сделать MsgBox % numEl то он отдаст число ~25 +- для разных страниц. Но вот та строка

PageInst.Evaluate("document.getElementsByClassName('ClassName')[No].href;").Value

упорно отправляет No как текст, а не как значение. %No% дает тот же результат. "No" дает "ошибка запуска скрипта, ожидается ;, а не ".
Кто то в курсе, как Evaluate'у давать значения переменных?

2 (изменено: teadrinker, 2018-11-15 14:28:34)

Re: AHK: chrome.ahk как сделать цикл с PageInst.Evaluate?

Gh0sTG0, рукалицо.jpeg. Берётесь за высшую математику, не изучив элементарной арифметики. Причём тут Хром вообще? Вам надо понять, как добавить переменную в строку.
Догадайтесь, как в примере ниже вместо второго var получить значение переменной var:

var := "test"
MsgBox, % "Content of var = var. I did it!"
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: chrome.ahk как сделать цикл с PageInst.Evaluate?

teadrinker
Признаюсь, я дурак. Но как же не хватает какого то базового учебника по ahk... Я пробовал ставить .Nom. без пробелов до и после...

4

Re: AHK: chrome.ahk как сделать цикл с PageInst.Evaluate?

Конкретно этот вопрос рассматривается в справке в топике «Переменные и выражения».

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5

Re: AHK: chrome.ahk как сделать цикл с PageInst.Evaluate?

teadrinker Нашел, узрел "перед точкой и после нее необходимо оставлять пробелы", ушел просвещаться. Спасибо.