He estado teniendo problemas para que IE reconozca la nueva etiqueta de tiempo en este contexto. Todo esto funciona muy bien en FF. Aquí está el código:Html 5 Time Tag no reconocido por IE8 al clonar
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');
El HTML se ve algo como esto:
<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 puede encontrar la etiqueta de tiempo, pero devuelve una colección de 2 elementos. Asumo el comienzo y el final. Sin embargo, no puedo acceder para modificarlo. He intentado val(), html() y texto(). Tampoco puedo pasar al HTMLElement real. No puedo obtener (0) .innerHTML. Pero, si yo .get (0) .tagName en realidad es la etiqueta de tiempo que tengo.
¿Alguna idea? Espero que esto tenga sentido.
Debo decir que estoy usando html5shiv para crear elementos inexistentes. Eso debería crearlos correctos? – matsientst
Sí. Si usa un shiv, el código anterior es redundante. –