При переключении вкладки нам надо к ней подключаться.
Если мы используем GetPage(), то подключаемся только к type=page.
GetPage(Index:=1, Type:="page", fnCallback:="")
{
return this.GetPageBy("type", Type, "exact", Index, fnCallback)
}
А вкладки могут быть разных типов, к тому же типы iframe не возвращают нужное значение.
Поэтому, я добавил такую функцию:
GetPage1(Index:=1, Type:="iframe", fnCallback:="")
{
return this.GetPageBy("type", Type, "not", Index, fnCallback)
}
И добавил условие в эту функцию:
GetPageBy(Key, Value, MatchMode:="exact", Index:=1, fnCallback:="")
{
Count := 0
for n, PageData in this.GetPageList()
{
if (((MatchMode = "exact" && PageData[Key] = Value) ; Case insensitive
|| (MatchMode = "not" && PageData[Key] != Value)
|| (MatchMode = "contains" && InStr(PageData[Key], Value))
|| (MatchMode = "startswith" && InStr(PageData[Key], Value) == 1)
|| (MatchMode = "regex" && PageData[Key] ~= Value))
&& ++Count == Index)
return new this.Page(PageData.webSocketDebuggerUrl, fnCallback)
}
}
Тестировал на опере, вроде работает.