Войти
NeoBooker.ru
Добро пожаловать к нам в гости!
Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
  • Страница 1 из 1
  • 1
Модератор форума: Peter, DEMBEL, YURIY  
Форум NeoBook » Всё о программе NeoBook » Общие вопросы по NeoBook » Авто-прокрутка WebBrowser
Авто-прокрутка WebBrowser
AlienДата: Пн, 22 Ноября 2010, 09:27 | Сообщение # 1
Требуется авто-прокрутка объекта WebBrowser, решил проблему так:
Code
    RAC_SendKeys "{PGDN}" ""

Ну аналогично со штатной командой SendKeys
Работает как хотелось, но подвело, когда ползунок становится в два раза меньше объекта браузера, то авто-прокрутка работает только до середины.
В чем проблема? И можно ли как-то сделать авто-прокрутку другими способами?
 
СообщениеТребуется авто-прокрутка объекта WebBrowser, решил проблему так:
Code
    RAC_SendKeys "{PGDN}" ""

Ну аналогично со штатной командой SendKeys
Работает как хотелось, но подвело, когда ползунок становится в два раза меньше объекта браузера, то авто-прокрутка работает только до середины.
В чем проблема? И можно ли как-то сделать авто-прокрутку другими способами?

Автор - Alien
Дата добавления - 22 Ноября 2010 в 09:27
СергейДата: Пн, 22 Ноября 2010, 09:43 | Сообщение # 2
Необукер
Quote (Alien)
И можно ли как-то сделать авто-прокрутку другими способами?
можно, где в недрах форума есть пример Дембеля, там прокрутка на яваскрипте и помоемому с применением библиотек...
Или в сети найти исполнение на js.
Quote (Alien)
В чем проблема?
если дублировать?! Как только стало в два раза меньше, то продублировать команду
 
Сообщение
Quote (Alien)
И можно ли как-то сделать авто-прокрутку другими способами?
можно, где в недрах форума есть пример Дембеля, там прокрутка на яваскрипте и помоемому с применением библиотек...
Или в сети найти исполнение на js.
Quote (Alien)
В чем проблема?
если дублировать?! Как только стало в два раза меньше, то продублировать команду

Автор - Сергей
Дата добавления - 22 Ноября 2010 в 09:43
AlienДата: Пн, 22 Ноября 2010, 10:04 | Сообщение # 3
Сергей, спасибо за подсказку, что-то я про js и не подумал даже :)
Сделал так:
на странице:
Code
<script type="text/javascript">
function ToDown()
{
     for (i=0; i<=1000000; i+=100000) window.scroll(1, i)
}
</script>

И выполнять с помощью BrowserExecScript
Code
BrowserExecScript "WebBrowser" "ToDown();" "JScript"
 
СообщениеСергей, спасибо за подсказку, что-то я про js и не подумал даже :)
Сделал так:
на странице:
Code
<script type="text/javascript">
function ToDown()
{
     for (i=0; i<=1000000; i+=100000) window.scroll(1, i)
}
</script>

И выполнять с помощью BrowserExecScript
Code
BrowserExecScript "WebBrowser" "ToDown();" "JScript"

Автор - Alien
Дата добавления - 22 Ноября 2010 в 10:04
СергейДата: Пн, 22 Ноября 2010, 10:35 | Сообщение # 4
Необукер
Quote (Alien)
Сделал так:
ну вот видишь.
У тебя даже компактный код на яве получился thumbs_up А мне в свое время мега скрипты поподались
Если не трудно, распиши для будущего поколения, что означают магические цыфры 1000000
 
Сообщение
Quote (Alien)
Сделал так:
ну вот видишь.
У тебя даже компактный код на яве получился thumbs_up А мне в свое время мега скрипты поподались
Если не трудно, распиши для будущего поколения, что означают магические цыфры 1000000

Автор - Сергей
Дата добавления - 22 Ноября 2010 в 10:35
AlienДата: Пн, 22 Ноября 2010, 10:58 | Сообщение # 5
Quote (Сергей)
что означают магические цыфры 1000000

ну почему сразу магические, скроллит по 100000 пикселей до миллиона, чтоб на всякий случай, т.к. конец страницы неизвестен.
Хотя есть ещё один способ, создать пустой объект в конце страницы с определенным id, например:
Code
<div id="ToDown"></div>

И ссылать к этому элементу
типа http://loacalhost/#ToDown
Но, это не мой вариант.

Добавлено (22 Ноябрь 2010, 10:58)
---------------------------------------------
Вот ещё способ

Code
window.scrollTo(0, document.body.scrollHeight);
 
Сообщение
Quote (Сергей)
что означают магические цыфры 1000000

ну почему сразу магические, скроллит по 100000 пикселей до миллиона, чтоб на всякий случай, т.к. конец страницы неизвестен.
Хотя есть ещё один способ, создать пустой объект в конце страницы с определенным id, например:
Code
<div id="ToDown"></div>

И ссылать к этому элементу
типа http://loacalhost/#ToDown
Но, это не мой вариант.

Добавлено (22 Ноябрь 2010, 10:58)
---------------------------------------------
Вот ещё способ

Code
window.scrollTo(0, document.body.scrollHeight);

Автор - Alien
Дата добавления - 22 Ноября 2010 в 10:58
СергейДата: Пн, 22 Ноября 2010, 11:20 | Сообщение # 6
Необукер
Quote (Alien)
чтоб на всякий случай
ну тогда уж программно узнавать высоту скрол-ой страницы :)
 
Сообщение
Quote (Alien)
чтоб на всякий случай
ну тогда уж программно узнавать высоту скрол-ой страницы :)

Автор - Сергей
Дата добавления - 22 Ноября 2010 в 11:20
AlienДата: Пн, 22 Ноября 2010, 12:54 | Сообщение # 7
ну я это и сделал в следующем примере :)
 
Сообщениену я это и сделал в следующем примере :)

Автор - Alien
Дата добавления - 22 Ноября 2010 в 12:54
СергейДата: Ср, 24 Ноября 2010, 20:10 | Сообщение # 8
Необукер
тоже нужно было выравнивание по центру скролла, в общую копилку :)
Существует несколько функций для скроллинга: window.scroll, window.scrollby, window.scrollTo Если надо, то в сети найдете описание к каждой функции

JS:(window.scrollTo)

Code
//позиция слева
var lf = parseInt(document.body.scrollWidth/2);
//позиция сверху
var tp = parseInt(document.body.scrollHeight/2);
//скроллим
window.scrollTo(lf, tp);
//В место lf и tp прописываем свои числа, если надо
/*
или компактно:
*/
window.scrollTo(document.body.scrollWidth/2,document.body.scrollHeight/2);

NB:
Quote
BrowserExecScript "wb" "var lf = parseInt(document.body.scrollWidth/2);|var tp = parseInt(document.body.scrollHeight/2);|window.scrollTo(lf, tp);" "JScript"
.соответственно одной строкой
BrowserExecScript "wb" "window.scrollTo(document.body.scrollWidth/2,document.body.scrollHeight/2);" "JScript"


Сообщение отредактировано
Сергей - Вс, 03 Апреля 2011, 13:32
 
Сообщениетоже нужно было выравнивание по центру скролла, в общую копилку :)
Существует несколько функций для скроллинга: window.scroll, window.scrollby, window.scrollTo Если надо, то в сети найдете описание к каждой функции

JS:(window.scrollTo)

Code
//позиция слева
var lf = parseInt(document.body.scrollWidth/2);
//позиция сверху
var tp = parseInt(document.body.scrollHeight/2);
//скроллим
window.scrollTo(lf, tp);
//В место lf и tp прописываем свои числа, если надо
/*
или компактно:
*/
window.scrollTo(document.body.scrollWidth/2,document.body.scrollHeight/2);

NB:
Quote
BrowserExecScript "wb" "var lf = parseInt(document.body.scrollWidth/2);|var tp = parseInt(document.body.scrollHeight/2);|window.scrollTo(lf, tp);" "JScript"
.соответственно одной строкой
BrowserExecScript "wb" "window.scrollTo(document.body.scrollWidth/2,document.body.scrollHeight/2);" "JScript"

Автор - Сергей
Дата добавления - 24 Ноября 2010 в 20:10
Форум NeoBook » Всё о программе NeoBook » Общие вопросы по NeoBook » Авто-прокрутка WebBrowser
  • Страница 1 из 1
  • 1
Поиск: