如何使用jquery强制一个单词更改大小写等以保留品牌
How do you force a word to change case etc to preserve branding using jquery possibly?
假设你是苹果。。。在整个网站范围内,你希望iPod的每一个实例都是合适的案例和结构,以保留品牌。我和一家根本不是苹果的公司也有类似的问题,但它也面临着同样的品牌挑战。
因此,即使有人在运行该网站的CMS中键入IPOD、IPOD或IPOD,它也将始终正确显示为IPOD
即使标题上有一个文本转换CSS,使所有内容都像IPOD ETC ETC一样大写,它也会强制i小写为IPOD ETC ETC。
即使有iPod、IPODAGE、iPoDdInG等复数或变体。。。任何对它的诋毁都会转化为合适的情况——iPod、iPodage、iPodding
我已经对jsfiddle上的以下脚本进行了一些实验,虽然我对js基本上没有受过教育,但运气并不好。
http://jsfiddle.net/x9BSn/2/
我已经在网站上为许多其他东西引入了jquery,所以我可以很好地利用它。
这是(我相信)一个工作版本:http://jsfiddle.net/x9BSn/11/
$.fn.changeWord = function (str, className) {
var regStr = str + "(?=(?:[^'>]|'<[^'<]*'>)*$)";
var regex = new RegExp(regStr, "gi");
var txt = this.html();
txt = txt.replace(regex, function(matched) {
return "<span class='" + className + "'>" + str+ "</span>";
});
this.html(txt);
};
$('#myDiv').changeWord('specialWord', 'sw');
它将用str
(具有所需大小写)替换未包含在标签(< ... >
)中的str
(大小写不变)的所有实例。
所以,如果你想让它成为"SpEcialWorD",你可以用来实现
$('#myDiv').changeWord('SpEcialWorD', 'sw');
如下所示:http://jsfiddle.net/x9BSn/13/
然后,您可以使用类似这样的css来添加到该内容中:
.sw:after{
content: "TM";
vertical-align:super;
font-size:.5em;
}
刚刚修改了Shmiddty
的解决方案一点
$.fn.changeWord = function (str, className) {
var regex = new RegExp(str, "gi");
return this.each(function () {
this.innerHTML = this.innerHTML.replace(new RegExp('(' + str+ '(?=(?:[^'>]|'<[^'<]*'>)*$))', 'gi'), "<span class='"+className+"'>$1</span>");
});
};
$('#myDiv').changeWord('specialWord', 'sw');
演示
相关文章:
- 如何使用jquery强制一个单词更改大小写等以保留品牌
- Regex:匹配以“AM”结尾的单词(不区分大小写比较)
- regex,用于修改单词末尾特定大小写的字符
- Regex以匹配整数或单词“”;“其他”;,不区分大小写
- 用于捕获单词的正则表达式,无论大小写
- 从所有单词中替换,即使用破折号分隔,第一个字符用大写[更简单的方法]
- 更好的性能?200+ 个单独的结果页面或 200+ 个条件(如果还有其他梯形图或开关大小写?)在 Javascript/
- 正则表达式,用于从 TitleCase(驼峰大小写)获取最后一个单词
- 将句子或驼峰大小写单词转换为棘壳
- 返回标题大小写,尊重单词中间的大写字母
- 更简洁的非区分大小写的测验验证
- MongoDB 正则表达式找到两个单词,它们之间正好有 n 个或更少的单词
- 如何更快、更智能地突出显示单词/术语
- 无论大小写,请检查文本框中是否有单词
- 通过JavaScript中的dictionary对象检查单词的有效性-是否有更好的方法来引用/构建词典
- 标题大小写一个句子 - 哪个解决方案更好,为什么
- 如果字符串具有不同的大小写,如何将字符串中每个单词的首字母转换为大写
- JavaScript/jQuery使用更多的单词而不是IndexOf-聊天机器人
- Regex函数使单词标题大小写(包括连字符)
- 禁止使用单词,但如果有更多单词,则禁止使用