私は、ヒント モードを使用してドロップダウン メニューのマウス オーバーをシミュレートできる 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 では機能しません。ほとんどのページで機能するマウスオーバーをシミュレートする方法はありますか?
ベストアンサー1
イベントを作成するための最初のコードは、よりシンプルで、より多くのブラウザで動作します(正確なマウス座標を指定する必要がない場合)。
if( document.createEvent ) {
var evObj = document.createEvent('MouseEvents');
evObj.initEvent( 'mouseover', true, false );
elem.dispatchEvent(evObj);
} else if( document.createEventObject ) {
elem.fireEvent('onmouseover');
}
役に立つことを願う