Страницы: 1
Подобный вопрос уже поднимался в топике и так и не получил вразумительного ответа:
http://forum.mozilla-russia.org/viewtop … pid=193461
Суть в том, что при попытке эмулировать клик мыши по ссылке с картинкой клик производится по всегда нулевым координатам. К примеру в форме имеем такую кнопку:
<form method="POST"...... .....<input name="append" src="pics/app_button.jpg" alt="добавить" type="image">
При нажатии на кнопку нижеследующим кодом, в целевой странице в запросе POST в координатах клика отправляются нули несмотря на то, что я их поставил ненулевыми:
mouseEvent.initMouseEvent('click', true, true, window, 1, 5, 5, 5, 5, false, false, false, false, 0, null); clickLink.dispatchEvent(mouseEvent);
Кстати также с нулевыми координатами запрос формируется в FireFox в случае отключения отображения картинок. К примеру даже с отключенными картинками в Opera все нормально так она хотя бы рамки от картинок показывает и полноценно кликает на них, так, как если бы она была загружена. В FireFox же вместо картинок часто отображается просто текст из альта без всяких рамок и контейнеров соответствующих размеров.
Можно конечно попробывать поизвращаться с этим нижеописанным методом, но он неудобен, т.к. слишком зависим от размеров окна, активированных панелей инструментов (координаты начинаются не с верхнего левого угла страницы а именно окна, возможно из-за того, что я использую этот метод из iMacros и не совсем правильно интерфейсы вызываю) и еще придется использовать прокрутку. Вообщем пока меня этот метод не особо прельщает.
var req = getBrowser().docShell.QueryInterface(Components.interfaces.nsIInterfaceRequestor);
var utils = req.getInterface(Components.interfaces.nsIDOMWindowUtils);
utils.sendMouseEvent("mousedown", 105, 110, 0, 1, 0, true);
utils.sendMouseEvent("mouseup", 105, 110, 0, 1, 0, true);
Вообщем:
Как по нормальному кликнуть на кнопку?
Отредактировано srafael (18-08-2009 13:40:42)
Отсутствует
Страницы: 1