我在让 html 5 处理添加到 IE 正文中的元素时遇到问题。我正在使用 Modernizr 中包含的 HTML 5 shiv但这对于任何其他 HTML 5 库来说都是同样的问题。
它适用于除直接添加到正文的 HTML 5 元素之外的任何元素,这会给出相同的错误消息,就好像我在不使用 shiv 的情况下使用 jQuery 一样(意外调用方法或属性访问) 。这是 IE (7, 8) 中加载了 Modernizr 或 html5.js 的破坏性示例:
$(document).ready(function()
{
$('body').append('<nav class="test"></nav>');
$('.test').html("Testing HTML 5");
});
知道为什么会发生这种情况吗?
最佳答案
Joe Bartlett 在 this 中解决了您的问题文章。他解释了这个问题并展示了一个解决方案(HTML5 innerShiv)。
IE8及以下版本的解决方案是插入他的 script然后将所有 html5 内容包装在 innerShiv(...)
中,然后将其插入 dom
$("body").append(innerShiv("<nav class=\"test\"></nav>"));
关于javascript - HTML5 shiv 和附加到正文的元素的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7796878/