$mouse->click($x,$y);
$mouse->click($x,$y);
кажеться, сабж не работает, если в момент клика под курсором нет ссылки
хотел кликнуть на полосу прокрутки, дабы промотать страницу вниз - нифига
хотел кликнуть просто по пустому месту страницы, дабы фокус перенести из поля ввода на body - аналогично, ничего
хотел кликнуть на полосу прокрутки, дабы промотать страницу вниз - нифига
хотел кликнуть просто по пустому месту страницы, дабы фокус перенести из поля ввода на body - аналогично, ничего
$mouse->click($x,$y); - клик только по странице. Координаты курсора берутся из информационной полоски в нижнем правом углу программы. Чтобы кликнуть по какому-то элементу вне поля страницы, нужно использовать $mouse->click_to_screen($x,$y); Координаты получаем функциями $mouse->get_x(); и $mouse->get_y();
Сабж проверил - работает. Дело в чём-то ином. Координаты задаёте?
Сабж проверил - работает. Дело в чём-то ином. Координаты задаёте?
> Полоса прокрутки - элемент браузера, увы
почему тогда координаты мыши отслеживаются и тогда, когда мыш на полосе прокрутки находится? стоит ей выйти за пределы страницы - отслеживание координат прекращается
ну ладно, а как быть с изменением фокуса элементов?
допустим, если курсор находится в поле ввода, и потом кликнуть на пустое место страницы, поле ввода теряет фокус (фокус получает элемент body)
при клике же в ХНЕ этого не происходит (мыш в указанные координаты перемещается, но поле ввода фокуса не теряет - значит клика нету)
тестировал на том же гугле
почему тогда координаты мыши отслеживаются и тогда, когда мыш на полосе прокрутки находится? стоит ей выйти за пределы страницы - отслеживание координат прекращается
ну ладно, а как быть с изменением фокуса элементов?
допустим, если курсор находится в поле ввода, и потом кликнуть на пустое место страницы, поле ввода теряет фокус (фокус получает элемент body)
при клике же в ХНЕ этого не происходит (мыш в указанные координаты перемещается, но поле ввода фокуса не теряет - значит клика нету)
тестировал на том же гугле
К сожалению, и у меня подобная проблема присутствует.yaman писал(а): допустим, если курсор находится в поле ввода, и потом кликнуть на пустое место страницы, поле ввода теряет фокус (фокус получает элемент body)
при клике же в ХНЕ этого не происходит (мыш в указанные координаты перемещается, но поле ввода фокуса не теряет - значит клика нету)
тестировал на том же гугле
Испытываю в связи с этим большие неудобства.
Хотелось бы что бы разработчики обратили на нее внимание.
<?php
// The following code is required to properly run XWeb Human Emulator
require("../Templates/xweb_human_emulator.php");
// navigate to google
$browser->navigate("http://www.google.com");
// wait on browser
$browser->wait(1);
$input->set_focus_by_name("q");
$mouse->click(1,1);
// Quit
$app->quit();
?>
а это работает ?
// The following code is required to properly run XWeb Human Emulator
require("../Templates/xweb_human_emulator.php");
// navigate to google
$browser->navigate("http://www.google.com");
// wait on browser
$browser->wait(1);
$input->set_focus_by_name("q");
$mouse->click(1,1);
// Quit
$app->quit();
?>
а это работает ?
не работает
нет
в этом примере google автоматически выбирает поля ввода,после загрузки страницы.
заслуги human emulator'a тут нет.
в этом примере google автоматически выбирает поля ввода,после загрузки страницы.
заслуги human emulator'a тут нет.
вопрос решен в 3.0.17, можно скачать в папке загрузок программы - 3_0_17_beta
этот код прокручивает полосу прокрутки
вроде по этой ошибке все.
Код: Выделить всё
<?php
// The following code is required to properly run XWeb Human Emulator
require("../Templates/xweb_human_emulator.php");
// navigate to google
$browser->navigate("http://www.google.com");
// wait on browser
$browser->wait(1);
$input->set_value_by_name('q','поиск');
$button->click_by_name('btnG');
$browser->wait(1);
$mouse->click(933,382);
// Quit
$app->quit();
?>
вроде по этой ошибке все.