請參閱問題底部的解決方案。如何在IE8中「啓用」通過AJAX調用插入的HTML5元素?
對於未知元素(即HTML5元素),IE 8(和更低版本)無法正常工作,無法對它們進行設計或訪問其大部分道具。他們有很多解決這個問題的方法,例如:http://remysharp.com/2009/01/07/html5-enabling-script/
問題是,這對於頁面加載時可用的靜態HTML非常有用,但是當後來創建HTML5元素時(例如包含它們的AJAX調用,或者只是創建與JS),它會將這些新添加的元素標記爲HTMLUnknownElement
,假定爲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>
在IE中,您將看到:UPDATE和新元素。 在任何其他現代瀏覽器,你會看到更新和更新
看我如何使用innerShiv和jQuery在HTML 5內容ajaxing博客。 http://tomcoote.co.uk/javascript/ajax-html5-in-ie/ – 2011-03-05 00:15:09