помогите с событиями
<script>
function test(){ alert('ss'); } </script> <div style="width: 100px; height: 100px; border: black 1px solid;" onClick="test();"></div> <script> function simulateClick(x, y) { var el = document.elementFromPoint(x, y); el.innerHTML = 'sss'; alert('ss'); var evt = document.createEvent("MouseEvents"); evt.initMouseEvent("click", true, true, window, 1, 0, 0, x, y, false, false, false, false, 0, null); el.dispatchEvent(evt); } </script> <a href="" onclick="javascript: simulateClick(250, 250);">111</a> |
нужно имитировать клик мышки в любой области, заданной координатами
проблема такая: функцию simulateClick() требуется вызвать так <script>simulateClick();</script> или так <script>window.onload = simulateClick;</script> а она вызывается только так onclick="javascript: simulateClick(250, 250);" в поиск не отправляйте, уже использовал и не нашёл ответа на мой вопрос. если даже он там был, то не ругайте, я чайник |
Пожалуйста, отформатируйте свой код!
Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. По теме, используйте анонимную функцию: <script> window.onload = function() { simulateClick(250, 250); } </script> |
извините)
вот такой код у меня <script> function test(){ alert('ss'); } </script> <div style="width: 100px; height: 100px; border: black 1px solid;" onClick="test();"></div> <script> function simulateClick(x, y) { var el = document.elementFromPoint(x, y); el.innerHTML = 'sss'; alert('ss'); var evt = document.createEvent("MouseEvents"); evt.initMouseEvent("click", true, true, window, 1, 0, 0, x, y, false, false, false, false, 0, null); el.dispatchEvent(evt); } </script> <a href="" onclick="javascript: simulateClick(250, 250);">111</a> анонимная функция не помогает, т.к. моя функция simulateClick() вызывается ещё из одной и конструкция <script> fucntion other(){ window.onload = function() { simulateClick(250, 250); } } other(); </script> не пашет :( |
а функция other() вызывается из третей
поэтому здесь другой какой-то способ должен быть.. вот только какой? :-? |
<script> fucntion other(){ simulateClick(250, 250); } other(); </script> В общем я вообще не понимаю проблемы. |
спасибо)
с эмуляцией клика разобрался :) задача свелась к получению элемента по координатам (X,Y) есть ли какие-нибудь способы? |
*получению доступа к элементу
|
var el = document.elementFromPoint(x, y); |
надо узнать координаты абрисов ВСЕХ объектов страницы, определить иерархию и видимость ВСЕХ объектов страницы и потом по данным координатам определить - по какому же объекту (из ВСЕХ имеющихся) надо кликнуть.
|
Часовой пояс GMT +3, время: 21:42. |