使用 javascript 为小部件编写 iframe - 最佳实践/限制? [英] Using javascript to write an iframe for a widget - best practices / limitations?

查看:21
本文介绍了使用 javascript 为小部件编写 iframe - 最佳实践/限制?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发某种第三方小部件(HTML5/js 视频播放器),旨在无缝嵌入第三方网站,可与 Flash 播放器(HTML5/js 播放器在这种情况下是一个后备).

为了允许通过单个网关进行外部嵌入,我们提供了大致如下所示的嵌入代码:

<script src="http://example.com/embed.php?id=12345678&width=400&height=300"></script>

注意 .php 扩展名.这个脚本的作用是执行一些基本的浏览器代理检测,运行一些主要基于id"查询字符串的后端逻辑,然后将 document.write 的 javascript 回显到页面的实际嵌入代码.

如果是支持 Flash 的设备,document.write 代码是直接的 Flash 嵌入代码(无 iframe;直接到他们的页面);如果是 iOS 设备,它会写入 <iframe>,其 src 指向一个 HTML 文档,该文档 HTML5/javascript 播放器——在其中包含自己的 .js,body 中的一组

组成 HTML5/js 播放器等

我相信这可以清理/做得更好.所以,我的问题:

  1. 可以或应该删除哪些步骤(如果有)?

  2. 开始时将 HTML5/js 版本放入 iframe 中而不是直接将其全部写入页面是个好主意吗?我们在 中使用的外部 .js 呢?此外,在未来,我们可能需要与我们的网站进行某种双向通信(与 iframe src 相同的域),因此 iframe 提供了一种很好的方式来实现这一点,对吗?

  3. 如果在 iframe 中加载,是否有任何我需要担心的范围问题(例如,我们播放器的 jQuery 版本与第三方父页面上的内容冲突)?

  4. 有什么我可以/应该做的事情来确保正确的加载顺序,这样我就不会在我们的脚本加载/执行时对第三方网站产生负面影响?

  5. 是否有比使用 document.write 将最终嵌入代码写入第三方页面(无论是 Flash 的 代码还是 HTML5/js 的