jQuery 倒计时不适用于 IE 8

标签 jquery internet-explorer-8

我的网站中嵌入了一个倒计时。它在 Mozilla/Chrome/IE9 中工作正常,但在 IE 8 中工作不正常。

http://jsfiddle.net/FVsGa/

$(function () {
    var ts = 1359647999000;

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

最佳答案

当您使用 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 中的问题。

我有forked and corrected代码,以及 issued a pull-request为了其他人的利益,将更改拉回原始存储库。

关于jQuery 倒计时不适用于 IE 8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14040715/

相关文章:

jquery - ipad 点击的下拉菜单

javascript - 更改选择框时计算价格变化

internet-explorer - &lt;input type ='text'/> 的圆 Angular 使用 IE 的 border-radius.htc

select - 垂直对齐 IE8 选择元素内的文本

html - ie8 利润率最高的错误

javascript - CKEDITOR.replace() 隐藏了我想要转换的文本区域

javascript - 平滑 jQuery 动画

javascript - 识别纯文本句子中的推特句柄

javascript - 为什么IE8不喜欢这个JS呢?

jquery - IE 特定 - 当 jquery 设置为 ""时,闪烁的光标在文本类型的输入中消失