如何在页面点击之间不重新加载iFrame

时间:2013-07-17 08:39:24

标签: asp.net ajax iframe sitecore sitecore6

我有一个难以在这里破解的坚果。 我有以下情况: - 在iFrame中(没办法)我正在加载一个外部网站/应用程序。 - 此iFrame仅在一页和一页上。 - 每当您第一次访问iFrame页面时,应用程序需要一定的加载时间(平均约5秒)。 - 在应用程序中,您可以更改视图和参数等。 - 当您离开该页面并转到另一个页面并稍后返回到iFrame页面时,要求是没有加载,并且iFrame的内容与您之前保留的内容相同。

我知道这可以通过使用帧(这是90年代)来完成,但我真的不想这样做。必须有一种更现代的方式。

请注意,iFrame周围的网站正在使用Sitecore,因此这可能是某些解决方案的限制因素。

我想到的事情: - 使用2帧,一个用于带导航的标题,另一个用于内容。以这种方式,iframe永远不必重新加载,我们已经回到了时间...... :( - 永远单击是一个Ajax调用,iFrame位于一个隐藏的div中,直到单击右键。

然后我找到了一个名为BigPipe的东西。我还没有找到ASP.NET实现,但我希望有人已经有了这方面的经验。

有没有更好的想法?

THX

1 个答案:

答案 0 :(得分:0)

如果您的iFrame是Sitecore子布局或渲染的控件(或者可以移动到渲染/子渲染),您可以在子布局上选中Cacheable选项并将其设置为因内容或设备或其他因素而异这是什么。然后,您将在Sitecore的缓存中获得该帧的内容,该缓存由Sitecore管理,并且它将始终尽可能地呈现缓存版本,并且基本上应该解决您的困境。