javascript – 在Vimperator插件中模拟鼠标悬停

我试图写一个Vimperator插件,允许使用提示模式来模拟鼠标在下拉菜单。我有提示模式工作,可以正确选择有鼠标悬停事件附加的元素。问题是我的功能模拟鼠标不工作。这是我目前有:

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。任何想法如何模拟鼠标,这将工作大多数页面?

这里有一些代码开始创建事件,更简单,并适用于更多的浏览器(如果你不需要指定确切的鼠标坐标)

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

希望有所帮助

翻译自:https://stackoverflow.com/questions/911586/simulate-mouse-over-in-vimperator-plugin

转载注明原文:javascript – 在Vimperator插件中模拟鼠标悬停