Ich habe Probleme bekommen IE in diesem Zusammenhang das neue Time-Tag zu erkennen. Das alles funktioniert super in FF. Hier ist der Code:Html 5 Time Tag nicht erkannt von IE8 beim Klonen
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');
Die HTML etwa wie folgt aussieht:
<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 kann die Zeit-Tag finden, aber es gibt eine Sammlung von 2 Elementen. Ich nehme den Anfang und das Ende an. Ich kann jedoch nicht darauf zugreifen, um es zu ändern. Ich habe val(), html() und text() ausprobiert. Ich kann auch nicht auf das eigentliche HTMLElement zugreifen. Ich kann nicht (0) .innerHTML. Aber, wenn ich .get (0) .tagName es ist tatsächlich die Zeitmarke, die ich habe.
Irgendwelche Ideen? Ich hoffe, das macht Sinn.
Ich sollte angeben, dass ich html5shiv verwende, um nicht vorhandene Elemente zu erstellen. Das sollte sie richtig machen? – matsientst
Ja. Wenn Sie ein Shiv verwenden, ist der obige Code überflüssig. –