这里有人知道如何用javascript动态改变doctype吗?
我已经尝试过这个函数,
document.doctype('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">'); ,但它不起作用。
发布于 2013-01-25 19:02:17
我希望这篇文章能帮助你们中的一些人(在控制台中测试,它改变了实际的DOCTYPE)
var newDoctype = document.implementation.createDocumentType(
'html',
'-//W3C//DTD XHTML 1.0 Transitional//EN',
'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtdd'
);
document.doctype.parentNode.replaceChild(newDoctype,document.doctype);发布于 2010-06-30 17:01:36
document.doctype is a read-only属性,而不是方法,显然是根据MDC。
您需要的是:
https://developer.mozilla.org/En/DOM/DOMImplementation.createDocumentType
返回一个DocumentType对象,该对象可以在创建文档时与DOMImplementation.createDocument一起使用,也可以通过Node.insertBefore()或Node.replaceChild()放入文档中:
发布于 2011-05-31 07:15:35
为了证明这个用例的合理性,我有以下场景:
我有一个TAL模板,呈现了页面的一小部分。然后,我将该部分封装在父标记中,如下所示:
<html tal:omit-tag="True" ...>
<body tal:omit-tag="True">
<div class="wrapper" tal:omit-tag="True">
..
<div id="mydiv" tal:content="foo()">Example content.</div>
..
</div>
</body>
</html>这样,设计者就可以将此TAL模板作为独立的HTML文件进行查看/编辑。但是在TAL中不能省略DTD,因此不能将其添加到TAL中。
使用JavaScript添加它的一种简单方法如下:
if (!document.doctype) {
document.write('<!doctype HTML>\n' + \
document.head.outerHTML + \
document.body.outerHTML);
}https://stackoverflow.com/questions/3147750
复制相似问题