是否可以跨iFrame共享javascript导入?

是否可以跨iFrame共享javascript导入?,javascript,iframe,Javascript,Iframe,我有一个web应用程序,它有几个iFrame,所有这些iFrame都需要导入相同的javascript库(例如jquery) 有没有办法只加载一次,然后在所有iFrame中共享该数据?我不希望页面加载缓慢,因为它会为每个iframe加载一次相同的JS文件 谢谢 EDIT:人们说你不能共享来自iframe的数据,但是如果js导入都在一个名称空间中,比如说名称空间,然后iframe做了类似的事情呢 NAMESPACE=parent.NAMESPACE假设您src具有相同的URI,并且您具有sane缓

我有一个web应用程序,它有几个iFrame,所有这些iFrame都需要导入相同的javascript库(例如jquery)

有没有办法只加载一次,然后在所有iFrame中共享该数据?我不希望页面加载缓慢,因为它会为每个iframe加载一次相同的JS文件

谢谢

EDIT:人们说你不能共享来自iframe的数据,但是如果js导入都在一个名称空间中,比如说名称空间,然后iframe做了类似的事情呢
NAMESPACE=parent.NAMESPACE

假设您
src
具有相同的URI,并且您具有sane缓存控制头,那么JS将被缓存,并且不会为每个帧重新下载

也就是说,如果您真的想要,您可以在顶部框架中加载它,然后通过
父对象
访问所有内容


例如:

如果所有帧都加载相同的js文件,那么现代浏览器(chrome、firefox、IE)只需从缓存加载相同的文件……这样您就不必一次又一次地重新加载相同的文件。如果你的页面加载时间很长,考虑缩小你的JavaScript(通过使用另一个程序使你的JS文件变小)…这可以大大减少加载时间。p> 如果框架是独立的页面,它们不能像浏览器缓存那样“共享”数据。所以它应该缓存它,除非您使用的是带时间戳的querystring。那么文件将在缓存中[如果头设置正确],所以这不是慢问题。将其读入内存可能需要时间,但在现代浏览器中,这不是问题。我阅读了您的更新。我不会像那样更新名称空间。我只能依靠浏览器来缓存这些文件。您还应该考虑使用像Rejjs这样的模块,这样您的模块只加载一次。如果你觉得答案有用,请进行投票和/或标记。