我一直无法让IE识别此上下文中的新时间标记。这在FF中非常有效。 下面是代码:Html 5时间标记在克隆时无法被IE8识别
var origComment = $('.articleComment:first div');
if (origComment.length > 0) {
var commentHtml = origComment.clone(true);
commentHtml.find('time').text('today');
var html = '<article class="' + ((side == 'LEFT') ? '' : 'that') + '">' + commentHtml.html() + '</article>';
$(html).insertAfter('.articleComment:last');
的HTML看起来是这样的:
<article class="articleComment that">
<div id="156" class="parent">
<div class="byline">
<p>Posted <time pubdate="pubdate" datetime="2010-05-07T09:11:08">today</time> by<br/>
<a class="username" href="/u/matt">matt</a>
</p>
<p class="report"><a href="#">Report?</a></p>
</div>
<div class="comment">left</div>
</div>
</article>
IE可以找到时间标签,但它返回2个元素的集合。我假设开始和结束。但是,我无法访问它来修改它。我尝试过val(),html()和text()。我也不能掉到实际的HTMLElement。我无法获得(0).innerHTML。但是,如果我.get(0).tagName它实际上是我得到的时间标签。
任何想法? 我希望这是有道理的。
我应该说我使用html5shiv来创建不存在的元素。这应该创造他们正确的? – matsientst 2010-05-08 22:48:43
是的。如果你使用shiv,那么上面的代码是多余的。 – 2010-05-09 01:21:40