document.doctype仅在IE8中未定义

时间:2013-06-20 21:33:35

标签: html asp.net-mvc-3 internet-explorer-8 doctype

刚刚碰到这个问题,我完全吃了一惊。不确定会发生什么样的事情。

使用ASP.NET MVC 3生成Web应用程序.doctype在母版页中设置:

<%@ Master Language="C#" Inherits="System.Web.UI.MasterPage" %>

<!DOCTYPE html>

<html>
<head runat="server">
    <title><asp:ContentPlaceHolder ID="TitleContentRoot" runat="server" /></title>
    <asp:ContentPlaceHolder ID="CssContentRoot" runat="server">
    </asp:ContentPlaceHolder>

    <script type="text/javascript">
        console.log(document.doctype.name);
    </script>
</head>

在应用程序的给定页面上,我称之为:

console.log(document.doctype.name);

在最新的Google Chrome,FireFox和IE10 / 9中 - 都输出了html。

IE8,像冠军一样,吐出一个错误,表明doctype未定义:

  

无法获取未定义或空引用的属性“名称”

我没有在谷歌搜索中发现类似这样的事情。有没有人有我可以探索的想法?现在我在IE8中看错可能MVC3主页面渲染错误。

即使我在一个没有母版页的完全空白的新项目页面上也会发生这种情况,但在JS小提琴中却不会发生。嗯

1 个答案:

答案 0 :(得分:1)

来自http://www.w3schools.com/jsref/prop_document_doctype.asp

  

注意:在Internet Explorer 8及更早版本中,此属性为HTML和XHTML文档返回null,并且仅适用于XML文档。

抱歉,看起来它不受支持。