我正在开发一个系统,我将在嵌入式应用程序的浏览器中显示内容。不能使用普通的浏览器导航控件,而是在页面的包装器中运行javascript。内容将来自同一个域,但我无法预处理内容。需要符合IE8 +以及最新的FF和Chrome。
javascript需要做的事情是......
将内容html页面放在包装页面中的最佳方法是什么?例如
答案 0 :(得分:1)
iframe和div都可行。最终的选择将取决于您的实施细节,也是个人品味的问题。
使用div,html成为包装页面的一部分。风险是插入的内容与页面的其余部分之间存在冲突(例如,css,html id)。
iframe会创建一个沙箱并避免冲突。缺点是布局不容易调整,因为内容存在于自己的文档中。 html5引入了新的iframe属性,如“seamless”,但它们在IE8中不起作用。
答案 1 :(得分:0)
如上所述,iframe可能是最好的;但是他们已被弃用,并不总能给出最好的结果。另一种方法是为内容设置div,并将内容Ajax放入框架中。然后,您可以通过dom访问它以获取链接等。
要确定哪个最好,我会考虑加载什么内容 - 完整的HTML文档(包含doctype,head,元数据等)在没有I帧的情况下会出现问题。 如果加载的内容只是纯文本,也许有一些基本的HTML元素,我会把它变成一个div