Gid*_*don 28 javascript ajax jquery html5 internet-explorer
请参阅问题底部的解决方案.
IE 8(及更低版本)不适用于未知元素(即HTML5元素),无法设置样式或访问大部分道具.他们为此做了大量的工作,例如:http://remysharp.com/2009/01/07/html5-enabling-script/
问题是这对于页面加载时可用的静态HTML非常有用,但是当之后创建HTML5元素(例如包含它们的AJAX调用,或者只是用JS创建)时,它会将这些新添加的元素标记HTMLUnknownElement为假设to HTMLGenericElement(在IE调试器中).
有没有人知道解决这个问题,以便IE 8能够识别/启用新添加的元素?
这是一个测试页面:
<html><head><title>TIME TEST</title>
<!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
</head>
<body>
<time>some time</time>
<hr>
<script type="text/javascript">
$("time").text("WORKS GREAT");
$("body").append("<time>NEW ELEMENT</time>"); //simulates AJAX callback insertion
$("time").text("UPDATE");
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
在IE中,您将看到:UPDATE和NEW ELEMENT.在任何其他现代浏览器中,您将看到UPDATE和UPDATE