有没有办法用jQuery滚动iFrame跨域?

时间:2012-05-07 22:20:36

标签: jquery html iframe scroll

我似乎无法找到我想要的东西。谷歌一直在说“位置”(如CSS topleft),但我想要的是点击button并滚动框架。

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

3 个答案:

答案 0 :(得分:1)

如果您的iframe正在您的域中导航,则此代码可能有所帮助:

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

否则,您将收到错误消息,例如“不安全JavaScript尝试访问框架...域,协议和端口必须匹配”。

答案 1 :(得分:0)

我假设你想从外面滚动iFrame。我不知道它是否有效但是如何设置iFrame的哈希值以使用默认的滚动机制

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

其中“hash”可以是锚点或id的名称(最后一个仅用于支持浏览器)

编辑1:您可以简单地设置相同的域.scrollTop()

答案 2 :(得分:0)

Hash的默认滚动机制适用于大多数浏览器,因此它是来自外部域的iframe的最佳解决方案。