在IFrame中运行Skrollr

时间:2015-09-24 00:52:48

标签: javascript jquery iframe skrollr

我试图在IFrame中运行一些非常简单的Skrollr动画。当我用简单的HTML填充IFrame时,Skrollr将错误输出到控制台(在FireFox中):

'形成不好'

我已经确认IFrame内容是正确的,如果它们不在iframe和标准网页中,则运行得很好。我已经确认Skrollr javascript文件正在成功加载。所有CSS,JS和图像都与父网页位于同一个域中,因此不会发生跨域。当内容放在IFrame中时,问题就出现了。这让我觉得这是一个Cross-Scripting问题,还是Skrollr被编码来检测跨域/跨脚本?

任何想法都会出错,我怎么能克服这个?如果你愿意,我可以提供一个简单的例子。希望能够抓住Prinzhorn的注意力,是的,我知道Skrollr目前还没有得到维护,并且IFrame没有得到官方的支持,但如果我知道什么是出错或问题是什么我可以分叉Skrollr并添加这个功能。

修改:这是一个简单的JSFiddle示例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Tasks</title>
    <style>

        #main-container {
                width            : 1200px;
                height           : 1000px;
                background-color : #eee;
        }

        iframe {
            width: 100%;
            height: 100%;
            overflow: scroll;
        }

    </style>
</head>

<body>

    <div class="container text-center">

        <button id="load-btn">Load Iframe</button>

        <br/>

        <div id="main-container" class="text-center">
            <iframe id="mf-preview" frameborder="0"></iframe>
        </div>

    </div>

    <!-- Javascript files -->
    <script src="js/custom.js"></script>
</body> 
</html>

1 个答案:

答案 0 :(得分:0)

一切都在工作兄弟

当你的iframe大小超过1000px时,它会显示滚动条

例如:

<iframe id="mf-preview" src="http://onhax.net" frameborder="0"></iframe>

我添加了iframe的来源,大于1200px 添加之后就会显示滚动条

JSFiddle

中查看