Подтвердить что ты не робот

Имитация мыши в плагине Vimperator

Я пытаюсь написать плагин Vimperator, чтобы использовать режим подсказок для имитации мыши над выпадающими меню. У меня есть режим подсказок, и вы можете правильно выбирать элементы, связанные с событиями mouseover. Проблема в том, что моя функция имитации мыши не работает. Это то, что я сейчас имею:

function SimulateMouseOver(elem)
{
    var evt = elem.ownerDocument.createEvent('MouseEvents');
    evt.initMouseEvent('mouseover',true,true,
        elem.ownerDocument.defaultView,0,0,0,0,0,
        false,false,false,false,0,null);
    var canceled = !elem.dispatchEvent(evt);
    if(canceled)
        alert('Event Cancelled');
}

Вышеприведенный код работает для некоторых страниц, но не для других. Например, это не работает на AccuWeather. Любые идеи о том, как имитировать мышь, будут работать для большинства страниц?

4b9b3361

Ответ 1

здесь некоторый код для начала создания события, проще и работает для большего количества браузеров (если вам не нужно указывать точные координаты мыши)

        if( document.createEvent ) {
            var evObj = document.createEvent('MouseEvents');
            evObj.initEvent( 'mouseover', true, false );
            elem.dispatchEvent(evObj);
        } else if( document.createEventObject ) {
            elem.fireEvent('onmouseover');
        }

надеюсь, что поможет

Ответ 3

Вы можете запускать событие mouseover только для полей/элементов, привязанных к ним. Вы не можете просто захватить мышь.