iframe从自身定位

时间:2009-07-02 02:08:45

标签: javascript iframe

如何在当前的iframe中使用JS获取iframe位置?

此代码适用于IE

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

如何在Firefox中执行此操作?
screenLeftscreenTop - 未定义的 screenXscreenY - 父窗口的位置
parent.frames[self.name].screenX - 与screenX相同的结果

任何想法,我在FF中的iframe在哪里? THX。

1 个答案:

答案 0 :(得分:1)

您可以在iframe(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,或以其他方式引用iframe。