Что нового

[Мышь, клавиатура] Мягкий контролируемый скролл(эмуляция)

mir546

Новичок
Сообщения
27
Репутация
0
Всем привет!
Помогите, кто знает
простая эмуляция скрола идет отрывисто неконтролируемо
как сделать пролистывание страницы контролируемым, чтобы по заданным пикселям ластилась?
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Поскольку тема создана в разделе автоматизации IE и Web-интерфейса, то может лучше перейти на обсуждение элементов страницы, а не говорить о пикселях?
Ну и тогда мы сразу перейдём на следующий шаг
скрол окна IE до нужного элемента
 
Автор
M

mir546

Новичок
Сообщения
27
Репутация
0
C2H5OH сказал(а):
Поскольку тема создана в разделе автоматизации IE и Web-интерфейса, то может лучше перейти на обсуждение элементов страницы, а не говорить о пикселях?
Ну и тогда мы сразу перейдём на следующий шаг
скрол окна IE до нужного элемента
я бы сказала идеально решение.

Но проблема в том, что исходник прогружается не полностью...
И есть такой момент: у страницы конец ещё далеко, список большой, а скрипт уже остановился :stars:
Как решить?
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Ну не видим мы ни кода страницы, ни Вашего скрипта.
Что тут скажешь?...
 

edyapd

Осваивающий
Сообщения
380
Репутация
30
Задайте в поиске scrollHeight, может сможете выбрать что-нибудь из результата.
 
Автор
M

mir546

Новичок
Сообщения
27
Репутация
0
Принял решение прогрузить максимальным скроллом всю страницу, а потом взять её исходник и работать с ним.
Благодарю всех!

прогрузка максимальным скроллом тут http://autoit-script.ru/index.php?topic=18635.msg112450#msg112450
всё остальное тут

от сюда http://autoit-script.ru/index.php?topic=4704.msg34055#msg34055
взял интересное решение:
Код:
$oIE.document.parentWindow.execScript("setTimeout(function(){window.scrollTo(0, 10000);},1)")


я записал как
Код:
$oIE.document.parentWindow.execScript("var scrollHeight = document.documentElement.scrollHeight;var clientHeight = document.documentElement.clientHeight; var max4=Math.max(scrollHeight, clientHeight); window.scrollBy(0, max4);")



Добавлено:
Сообщение автоматически объединено:

Прогрузка до конца страницы
Такой код написал, мб кому-то пригодится
Код:
$errS=0
$clientHeightD=$oIE.document.documentElement.clientHeight
While 1
   $SeyTopClient=$oIE.document.documentElement.scrollTop+$clientHeightD
   $MaxScroll=$oIE.document.documentElement.scrollHeight
   $oIE.document.parentwindow.scrollTo(0, $MaxScroll-100)
 
   If $SeyTopClient=$MaxScroll Then
	  $errS+=1
	  If $errS<=10 Then ;5секун
			Sleep(500)
		 ElseIf $errS<=25 Then ;15секунд.
			   Sleep(1000)
			Else
			   ExitLoop
			EndIf
   EndIf
   If $SeyTopClient<>$MaxScroll Then $errS=0
 
WEnd
MsgBox(0,'','Высота экрана:'&$clientHeightD&@CRLF&'Местоположение:'&$SeyTopClient&@CRLF&'Максимальный скролл:'&$MaxScroll)


Скрипт листает до самого низа, когда долистал или страница перестала догружатся то он ждет 20секунт, после чего завершает работу

Теги: Скролл до конца страницы, конец страницы, максимальный скролл, максимальный scroll
 
Верх