IE中的.text更新问题

时间:2014-05-16 13:33:19

标签: javascript jquery internet-explorer

在IE中遇到一些问题(不是我们所有人)。

我已经找到了一个问题,我需要一个更新推文时间戳的递归脚本。

脚本工作正常,发现要更新的所有日期/时间戳,转换它们很好但是当更新'time'时它失败了。 IE与$('#id').text('value')没有问题,但我显然做错了什么。 有什么想法吗?

function parseTwitterDate() {
    var timeToAdjust
    $('a[data-scribe="element:full_timestamp"]').each(function() {
        timeToAdjust = $(this).find('time')
        var b = timeToAdjust.attr('datetime').split(/[-t:+]/ig);
        //funky stuff here to generate strTime
        timeToAdjust.text(strTime)
    });
}

这在其他所有浏览器中都可以正常工作,但至少在IE8中(并且6但不担心)它会到达timeToAdjust.text(strTime)并失败。 请注意,抓住'datetime'属性timeToAdjust.attr('datetime')没有问题。

尝试了.html()$(this).find('time').text(strTime)

非常感谢你看一眼有人可以指出我正确的方向。

贾斯汀

1 个答案:

答案 0 :(得分:2)

IE8及更早版本需要特殊的步骤来确保他们正确理解新的HTML5元素类型实际上是元素。有一些小脚本(like this one)可以帮助你。

如果不做这项工作,那些元素的许多方面都不会像IE8及更早版本中的普通元素那样起作用。

This JSBin of your code (jsFiddle不能与IE8一起使用)失败,但this one with a shim有效。