【发布时间】:2015-12-30 13:30:33
【问题描述】:
我有一个角度指令,可以单独在模型窗口上显示 PDF 报告,并带有加载微调器。问题是 iframe onload 未在 Edge 浏览器 中触发。基本上,一旦在 iframe 上加载 PDF,我就需要隐藏我的微调器。我只有 Edge 有问题,其余所有浏览器(IE11、FF、Chrome、Safari)都可以正常工作。
这是我的指令。
app.module('app.layout')
.directive('pdfReport', function() {
return {
restrict: 'E',
scope: {
iframesrc: '='
},
controller: function($scope) {
$scope.showSpinner = false;
console.log($scope.showSpinner);
$scope.$watch("iframesrc", function(newValue) {
if (newValue) {
$scope.showSpinner = true;
console.log($scope.showSpinner);
}
});
$('#reportIframe').on('load', function() {
$scope.showSpinner = false;
$scope.$apply();
console.log($scope.showSpinner);
});
},
template: '<div pdf-report-loader show-loader="showSpinner" ngplus-overlay-delay-in="30" ngplus-overlay-delay-out="30" ngplus-overlay-animation="dissolve-animation">' +
'<div class="model-spinner"></div>' +
'</div>' +
'<iframe id="reportIframe" ng-src="{{iframesrc}}" style="width: 100%; height: 500px;border: solid 1px white;">' +
'</iframe>'
}
});
【问题讨论】:
标签: javascript jquery angularjs iframe angularjs-directive