我想使用HTML5 postMessage
功能来实现“host”和“iframe”之间的通信。问题是,主机页面中的h DOCTYPE
无法保证(但iframe确实如此)。
那么,即使postMessage
是“HTML4”或“XHTML”,我还可以在JavaScript中使用DOCTYPE
或任何其他HTML5功能吗?
我已尝试过1)HTML4 DOCTYPE 2)XHTML DOCTYPE 3)在最新的Chrome和IE10中没有DOCTYPE。他们都工作。但我不知道它们是否适用于其他场景。
答案 0 :(得分:1)
Internet Explorer的早期版本在Quirks模式下更改了某些JS行为。这会更改某些界面(例如document.all
。
我不知道在任何地方是否有完整的清单。
其他浏览器不会在Quirks模式下更改JS行为。
答案 1 :(得分:0)
真的没办法知道。目前,浏览器执行DOCTYPE嗅探,触发标准,Quirks或其他一些模式,这些模式主要影响CSS代码的解释,但在某种程度上也影响JavaScript(DOM)和HTML。无论是HTML5 DOCTYPE还是HTML 4 DOCTYPE都不是至关重要的;更重要的是HTML 4 DOCTYPE是否与浏览器识别为触发标准模式的那些完全匹配。但是,嗅探游戏很复杂,有一天差异可能很重要。