jQuery倒计时在IE 8上无法工作

5

我在我的网站上嵌入了一个倒计时。在Mozilla / Chrome / IE9上运行良好,但在IE 8上无法正常工作。

http://jsfiddle.net/FVsGa/

$(function () {
    var ts = 1359647999000;

    if (ts > 1356524873000) {
        $('#countdown').countdown({
            timestamp: ts
        });
    }
});
2个回答

4

当您使用jQuery方法通过HTML字符串创建DOM元素时,Internet Explorer 8的行为与其他现代版本的IE9略有不同。显然在IE8中,您需要提供闭合标签才能正确创建元素。

您正在使用的倒计时插件包含以下代码:

$('<span class="count' + this + '">')

请注意这里的span元素没有关闭。您有几个选择:
  1. 关闭元素,或者
  2. 选择不同的方法
第一种方法相当简单明了:
$('<span class="count' + this + '"></span>')

这将解决您在IE8中遇到的问题。
第二个选择是采取不同的方法。其中一个我认为非常有吸引力的方法是使用HTML / Props签名,将属性作为第二个参数传递:
$('<span>', { "class" : "count" + this })

这也解决了IE8中的问题。
我已经分叉并纠正了代码,同时发出拉取请求,将更改拉回原始存储库,以使其他人受益。

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接