我将iframe集成到我的angularjs应用程序中,我也可以与我的iframe进行通信。我使用以下方式:
<iframe ng-if="reloadIFrame" class="embed-responsive-item" src="/context/iframe_integration.html"
onload="angular.element(document.documentElement).injector().get('$rootScope').$broadcast('iFrameLoadedEvent', event);">
</iframe>
我在服务中捕获广播的事件并保存对它的引用:
// ...
var iFrameInterface = false;
$rootScope.$on('iFrameLoadedEvent', function(ev, event) {
if(!iFrameInterface){
iFrameInterface = angular.element(event.target)[0].contentWindow.iFrameInterface;
// ...
问题如下:如果我导航到我的应用中的其他位置并返回到我的iframe集成的网站,则重新加载iframe并且我对它的引用是旧的。我可以更新对iframe界面的引用,但问题是“是否可以集成iframe一次,再也不会重新加载?”
如果我导航到另一个页面并在我再次访问该页面时重新加载,我不想每次都重新加载iframe的内容。
谢谢...