我有一些这样的HTML结构:
<span class="time">Monday, December 24th</span>
<span class="time">Tuesday, December 25th</span>
<span class="time">Monday, December 31st</span>
我无法更改HTML输出。我想要的是将日期序号包装在标签中,以便可以使用CSS设置样式,因此它看起来像:
<span class="time">Monday, December 24<sup>th</sup></span>
<span class="time">Tuesday, December 25<sup>th</sup></span>
<span class="time">Monday, December 31<sup>st</sup></span>
我不能仅在字符串中查找/替换字符串,因为例如,如果有人输入“ Thursday,April 11th”,则单词“ Thursday”包含“ th”。因此,我必须解析每个字符串,找到数字,然后查看日期序号是否跟在它们后面,以便将其包装在<sup></sup>标签中。
这样的东西可以找到数字,但是我该如何包装接下来的两个字母而不是数字呢?
$('span.time').each(function() {
$(this).html(function(i, v) {
return v.replace(/(\d)/g, '<sup>$1</sup>');
});
});
https://jsfiddle.net/8yao4rLu/
有任何想法吗?
相关分类