javascript – 当HTMLElement.dataset更新时,更新伪元素内容属性

前端之家收集整理的这篇文章主要介绍了javascript – 当HTMLElement.dataset更新时,更新伪元素内容属性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用CSS attr函数将data- *属性的值动态链接到伪元素的内容
body::after { content: attr(data-after) }

我随后通过HTMLElement.dataset属性定期更新该数据属性

setInterval(function () {
    document.body.dataset.after = new Date;
},1000);

我注意到,在Internet Explorer中,虽然所有这些功能都受支持,但伪元素没有更新其内容属性以反映最近的更改.

我已经建立了一个小提琴来展示这个问题.你可以查看它online here.

如何解决这个限制?

解决方法

Internet Explorer现在有一个已知的错误/限制,导致当数据集更新时,不会更新伪元素.一个足够的解决方法是更新旧的(并因此更广泛的支持)setAttribute方法属性
setInterval(function () {
    // Work-around for IE bug: https://stackoverflow.com/q/28031707
    document.body.setAttribute( "data-after",new Date );
},1000 );

你可以see the results here.

在内部已经提出了一个针对这个问题的错误,相应的功能团队应该在即将进行的分类中评估这个问题.我们将尽快分配开发周期来解决问题.

猜你在找的JavaScript相关文章