2009-07-02 14 views
1

現在のiframeでJSを使用してiframe位置を取得するにはどうすればよいですか?iframe位置自体から

このコードは、Firefoxでそれを行うにはどのように

var browser = navigator.appName; 
if (browser == "Microsoft Internet Explorer") { 
    scrollX=self.screenLeft; //works 
    scrollY=self.screenTop; //works strange 
} 

IE

で動作しますか?
screenLeftscreenTopから screenY
screenX未定義 - 親ウィンドウ
parent.frames[self.name].screenXの位置 - がscreenX

と同じ結果に私のiframeがFFである任意のアイデアを、?どうも。

+0

Object topWindow.document is inaccesible :-( –

答えて

1

あなたはインラインフレーム内から(http://www.quirksmode.org/js/findpos.html

function findPos(obj) { 
    var curleft = curtop = 0; 
    if (obj.offsetParent) { 
    do { 
     curleft += obj.offsetLeft; 
     curtop += obj.offsetTop; 
    } while (obj = obj.offsetParent); 
    return [curleft,curtop]; 
} 
var topWindow = window.top; 
var leftTopPosition = findPos(topWindow.document.getElementById("iframe_id")); 

これを行うことができますあなたは、IFRAMEのIDを指定するか、またはインラインフレームにいくつかの他の方法を参照する必要があります。

+1

Object topWindow.document is inaccesible :-( –

+0

iframeが親ドキュメントと同じ起点を持つ場合にのみ、これが動作するとします。 – Karolis

関連する問題