3 つのフレームを持つフレームベースの Web ページを作成しています。トップライナー、左側にナビゲーション、右下にコンテンツ フレーム。
ここで、ユーザーがコンテンツ フレームを右クリックしたときにポップアップ メニューを表示したいと考えています。div-container はフレームの外に出ることができないため、フレーム ページ全体を新しい iframe に配置するというのが私の考えでした。そのページでは、ポップアップ メニューである 2 番目の iframe を使用できます。
だから今、私はこのレイアウトを持っています:
<html> (start-page)
<iframe (real content)
<frameset
top-frame
navigation-frame
content-frame
>
>
<iframe> (my popup-menu, positioned absolutelly and hidden by default)
</html>
私のコンテンツフレームでは、ボディタグに「onmouseover」イベントが割り当てられています。このイベントは、現在のマウス位置で popup-iframe を開く必要があります。そして、まさにここに私の問題があります:マウス座標をトップWebサイト(私のドラフトの開始ページ)に対して相対的に取得する方法は?
現在、私はこのmouseDown関数を持っています(現在、IEでのみ動作しますが、FF&Coで動作させることは問題ではありません...)
function mouseDown(e)
{
if (window.event.button === 2 || window.event.which === 3)
{
top.popupFrame.style.left = event.screenX + "px";
top.popupFrame.style.top = event.screenY + "px";
top.popupFrame.style.display = "";
return false;
}
}
ご覧のとおり、"event.screenX" および "screenY" 変数は、メインページに関連していないため、使用できる変数ではありません。
何か案は?