我正在制作媒体播放器类型的应用程序,其他网站开发人员可以将其嵌入到他们的网站上。我需要为他们提供一组javascript函数,他们可以从他们网站的其他部分调用它们。我有一个带有外部接口的swf文件,因此我要求它在iframe中加载。
如何让我的iframe中的javascript可以从外部访问?
我看到了x-frame-options,但它的allow-from指令不适用于chrome和safari。我有什么选择?
答案 0 :(得分:1)
HTML5的方式是postMessage
。
如果你不能依赖它在HTML5环境中的使用,(a)真的很难过,(b)你可以使用Porthole。
答案 1 :(得分:1)
您似乎想为youtube等视频播放器提供嵌入式代码 有两个选项可以直接向其他网站开发人员提供I帧代码,因此他们只需将代码粘贴到其页面中即可。
<iframe width="560" height="315" src="//website.com/videoid={videoid}" frameborder="0" ></iframe>
在iframe页面目标中,您可以创建登录信息并输入视频代码,html和javascript ..
另一个选项
如果您想使用javascript,他们必须将您的javascript包含在他们的页面中,并且在您的javascript中,您必须使用javascript实现登录以创建I-frame
并动态地为iframe src提供..
在这种情况下,你绝对可以使用javascript访问你的I帧内容因为你的javascript和I-frame属于同一个域你可以阅读更多同样的orign政策 Same Origin
修改强> 这里有一些简单的代码如何使用JAVASCRIPT创建I-FRAME
<script type='text/javascript' charset='utf-8'>
var iframe = document.createElement('iframe');
document.body.appendChild(iframe);
iframe.src = 'URL OF CONTENT YOU WANT TO PROVIDE';
iframe.width = 'THE WIDTH YOU WANT';
iframe.height = 'THE HEIGHT YOU WANT';
</script>