0

它可能看起来很随意的问题,但我为此花了很长时间。

我在 IFRAME 中加载本地 HTML 文件并使用启用水平导航

overflow-x:scroll;overflow-y:hidden;

所以,我想知道当前的水平滚动条位置

var Iframe = document.getElementById("IframeId");
var pos = Iframe.scrollLeft;
              &
vat pos = Iframe.document.body.scrollLeft;

两者都不适合我。帮帮我

4

2 回答 2

4

body是在窗口内,而iframe不是在iframe元素内。您可以像这样引用正确的元素:

var Iframe = document.getElementById("IframeId").contentWindow;
var pos = Iframe.document.body.scrollLeft;

frames或者更多使用集合的跨浏览器方式:

var Iframe = window.frames['IframeId'];
var pos = Iframe.document.body.scrollLeft;

编辑

在 IE10 中,scrollLeft需要从 中读取属性document.documentElement,因此:

var pos = Iframe.document.documentElement.scrollLeft;
于 2013-10-21T05:12:02.187 回答
-1

您可以调整 iframe 的滚动条。

iframe{ width: XXpx; height: XXpx; overflow-x: auto; overflow-y: hidden; }

尝试这个。

于 2013-10-21T05:19:19.557 回答