我正在尝试使用rest服务获取带有javascript的html(在此javascript脚本标签内具有相对路径)并将其显示在我的angularjs应用程序的iFrame中。
基本上我们正在与 webfocus 集成,当我们调用 rest 服务时,webfocus 会提供 html 内容。此 html 内容中包含脚本标记,并且此脚本标记具有相对路径。因此,当我尝试将该 html/javascript 绑定到 iFrame 的 contentWindow.document.body 时,我遇到了相对路径问题。
任何帮助将非常感激。
Angularjs 指令如下。
.directive("preview", ['$sce',function ($sce) {
function link(scope, element) {
var iframe = document.createElement('iframe');
iframe.setAttribute("id", "ifWebFocusContent");
iframe.setAttribute("name", "nameWebFocusContent");
var element0 = element[0];
element0.appendChild(iframe);
var body = iframe.contentWindow.document.body;
//var body = iframe.document.body;
scope.$watch('content', function () {
body.innerHTML = $sce.trustAsHtml(scope.content);
});
}
return {
link: link,
restrict: 'E',
scope: {
content: '='
}
};
}])
HTML代码是<preview content="reportHtml"></preview>