我开发了一些在页面上呈现 iframe 的 javascript 代码。在框架内部,它加载了用于社交网络的各种 API,例如 facebook、twitter、linked in 等。它基本上是网站的一个工具,允许用户使用其社交网络登录。我还创建了一个简单的 jQuery 插件,可以将此 iframe 加载到模式弹出窗口中。
问题是这样的: 主 iframe 已加载到网站上,但开发人员还希望在同一页面上使用 jquery 插件。它工作正常,但是所有的 javascript 都被加载了第二次。所以基本上这是一种巨大的资源浪费,因为每个社交网络 api 都会被加载两次。我想知道是否有一种方法可以跟踪 api 已经加载,并停止再次加载它们。这两个 iframe 完全相同。
我尝试向 window.top 添加一些属性,但由于跨域限制,这不起作用。两个 iframe 属于同一域,但主站点是不同的域。
我还想知道 iframe 是否可以检测主窗口是否已加载 jquery,因为即使不需要,也会再次加载 jquery。
如有任何意见和建议,我们将不胜感激, 谢谢!
最佳答案
您不应该为此使用 iframe。听起来您正在创建一个“登录弹出窗口”供用户登录,假设他们点击了“评论”并且尚未登录。只需使用一个 div,并将其绝对 float 在页面其余部分上方。
关于javascript - 加载 javascript 和 iframe 之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7812923/