我正在尝试使用Angular 1.2将iframe动态插入页面中。这是代码:
HTML:
<div id="player_wrapper" ng-cloak>
<div ng-bind-html="player"></div>
</div>
js:
$http({method: 'GET', url: url}).
success(function(data, status) {
$scope.player = data.html;
}.......
因此data.html是一个具有有效HTML开头的字符串
<iframe ...>
该字符串还包含一些div。所以它看起来像:
<iframe src='...' ...></iframe><div>some stuf</div>
我在app.js’ngSanitize’中使用。它显示的是div(在iframe之后),而不是iframe本身。
如果我使用jQuery,基本上
$(#'player_wrapper').html(data.html)
效果很好…但是试图使其正确的angularJS。
关于为什么只显示iframe之后的div的任何想法?
非常感谢大家
ngBindHtml
$sce.getTrustedHtml
在显示之前将通过您的HTML
。我怀疑这将是删除您的iframe的原因。
根据文档,您可以使用$
sce.trustAsHtml
避免此检查,只要您完全信任来自此来源的任何HTML-来自不受信任来源的iframe可能会对您页面访问者造成很多麻烦。
$http({method: 'GET', url: url}).
success(function(data, status) {
$scope.player = $sce.trustAsHtml(data.html);
}.......
小心!:)
问题内容: 当有人点击图片时,我们使用jQuery厚盒来动态显示iframe。在此iframe中,我们使用Galleria一个JavaScript库来显示多张图片。 问题似乎是,在iframe中似乎触发得太早了,并且iframe内容还没有加载,因此Galleria代码未正确应用于DOM元素。似乎使用iframe父就绪状态来确定iframe是否已就绪。 如果我们将准备好的文档调用的函数提取到单独的函
问题内容: 试图使用AngularJS将iframe插入页面,即使是最简单的形式,我也无法使其工作。 Java脚本 我的HTML: 问题答案: 您需要使用$ sce 服务来告诉angular在视图上呈现html内容 Angular Doc说 $ sce是一项为AngularJS 提供 严格的上下文转义 服务的服务。SCE通过以下方式帮助编写代码:(a)默认情况下是安全的,并且(b)使得对安全漏洞(
问题内容: 我正在尝试将一些内容插入“空白” iFrame中,但是没有插入任何内容。 HTML: JS: 我正在调用该函数,所以我不明白为什么它没有插入。 问题答案: 您真的不需要jQuery: 如果绝对必须使用jQuery,则应使用 请不要忘记,如果您使用的是jQuery,则需要按如下所示插入DOMReady函数:
问题内容: 我有一个小问题。从服务请求数据后,我得到了一个iframe代码作为响应。 我想将其作为道具传递给我的模式组件并显示它,但是当我在render函数中简单地将其显示为字符串时。 在react中将其显示为html的基本方法是什么? 问题答案: 您可以像这样使用property 同样,您可以从 字符串中 复制所有属性( 根据问题,您从服务器获取iframe作为字符串 ),其中包含标签,并将其传
问题内容: 我有一个页面,其中包含2个控制器:一个管理一个所谓的“应用程序”列表,另一个将新的Angular模板放入其Div元素的innerHTML中。 我尝试使用标准的{{expression}}绑定,但是它们不适用于html,我也尝试了ng-bind-html- unsafe指令(将innerhtml绑定到App请求的返回值),但是控制器不支持在此新代码中执行。 问题似乎在于,通过使用绑定,A
问题内容: 我正在寻找一种在加载应用程序后从DOM获取初始数据的方法。服务器已将数据插入到视图中。是的方法是个好方法吗? 我也想知道在使用时如何从视图中获取数据,我可以使用标签在特定范围内注入数据吗? 我看到这个和这个问题,但它并没有帮助了很多。 问题答案: 1)受此问题启发的第一个解决方案是的方法: 然后,我们可以在希望的时间和地点使用它,如下所示: 但是这种方式在我开始使用时对我不起作用,可能