我使用AngularJS中的ng-repeat
生成一些表格内容,我希望将此内容显示在iframe中,以便用户可以拖动它并调整其大小。
我无法使用iframe src
属性,因为这需要一个网址,而我正在客户端上生成内容。
我可能想要一些srcdoc
的变体,但这似乎需要一行引用的html代码。
如何构建我的iframe,使ng-repeat
生成的内容显示在?
答案 0 :(得分:1)
您可以将AngularJS表添加到iframe。支持仅限于HTML5,但它看起来像这样:
HTML
<iframe id="frame" sandbox="allow-same-origin allow-scripts" srcdoc="" seamless="true"></iframe>
的Javascript
document.getElementById("frame").contentWindow.document.getElementById("mydiv")
可以使用srcdoc
属性代替src
来表示您将为内容提供代码。使用srcdoc
时,预计也会无缝;它告诉浏览器iframe的内容应该被视为网站的一部分,而不是嵌套的内容。不幸的是,这将触发样式更改,从而消除了您首先想要iframe的整个原因(调整大小句柄消失)。此外,您必须将css文件和javascript文件注入iframe - 它不值得。
我建议使用jQuery UI resizable:https://jqueryui.com/resizable/
这是我用来测试控制iframe内容的小提琴。它非常基本,但准确地证明了它们实际上有多少麻烦:Fiddle