假设您是Apple ...而且在整个站点范围内,您都希望iPod的每个实例始终保持正确的大小写,并保持其品牌结构。我对一家完全不是苹果公司但面临相同品牌挑战的公司也遇到了类似的问题。

因此,即使有人在运行站点的CMS中键入IPOD或ipod或iPoD,它也始终会正确显示为iPod

即使标题上有文本转换CSS,使所有内容都大写,如IPOD ETC ETC,它也会强制将i小写为iPOD ETCETC。

即使存在复数形式或变体,例如ipod,IPODAGE,iPoDdInG ...,并且对其进行任何混用也将转换为适当的大小写-iPod,iPodage,iPodding

我已经对下面在jsfiddle上找到的脚本进行了一些实验,尽管我对js的学习还不够,但是我运气并不好。

http://jsfiddle.net/x9BSn/2/

我已经在网站上引入了jQuery,用于其他许多事情,因此可以很好地利用它。

最佳答案

刚刚修改了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');



DEMO

关于javascript - 如何使用jquery强制单词更改大小写等以保留品牌?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12394664/

10-13 06:53