2012-05-07 51 views
-1

我似乎无法找到我想要的东西。谷歌一直说“位置”(如CSS topleft),但我想要的是点击button并滚动一个框架。有没有办法使用jQuery滚动iFrame跨域?

重点?因此,我不必在框架上使用滚动条 - 根据您使用的系统,它们可能很难看。

+0

啊是的。几乎忘了: 如果有办法做到这一点跨域请请告诉。 – RickyAYoder

+0

所以你想单击外部,然后滚动iFrame的内容 –

+0

是的。让我看看VisioN的jQuery是否能正常工作... – RickyAYoder

回答

1

如果您在iframe正在航行那么这段代码可以帮助:

$("button").on("click", function() { 
    $("iframe").contents().scrollTop(100); 
});​ 

否则,你会得到一个错误,说什么“不安全的JavaScript尝试访问框架...域,协议和端口必须匹配“。

+0

谢谢VisioN!现在我可以继续在这... – RickyAYoder

+0

不客气;) – VisioN

0

我假设你想从外面滚动一个iFrame。我不知道它是否有效,但对试图设置iFrame的哈希使用默认的滚动机制

$("iframe").attr("src", "http://www.example.com/#hash 

其中“哈希”可能是一个锚的名称或ID(只有最后一个是如何工作的在支持的浏览器)

编辑1:同一个域,你可以简单地设置.scrollTop()

0

利用哈希默认的滚动机制,在大多数浏览器上运行,所以它是一个iframe从外部域的最佳解决方案。

+0

你有一个例子吗? –