jquery - 如何将具有相似功能的 jquery 代码结合起来?

标签 jquery css

是否可以减少代码或重新创建具有相同功能的类似代码:Fiddle here .谢谢

$(".addcolor:contains('red')").html(function(_, html) {
   return  html.replace(/(red)/g, '<span class="red">$1</span>')
});
$(".addcolor:contains('blue')").html(function(_, html) {
   return  html.replace(/(blue)/g, '<span class="blue">$1</span>')
});
$(".addcolor:contains('green')").html(function(_, html) {
   return  html.replace(/(green)/g, '<span class="green">$1</span>')
});

代码的作用是用 span 替换特定的文本。如何直接使用 jquery 代码应用 css?

最佳答案

使用数组存储所有颜色值并创建正则表达式:

var arr = ['red','green','blue'];

for(i=0;i<arr.length;i++){
$(".addcolor").html(function(_, html) {

    var regex = new RegExp("("+arr[i]+")","g");
    htmla = '<span class="'+arr[i]+'">$1</span>';

   return  html.replace(regex, htmla);
});
}

更新 fiddle :http://jsfiddle.net/71eyg9gv/10/

关于jquery - 如何将具有相似功能的 jquery 代码结合起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28841269/

相关文章:

Jquery .css 不在函数内工作

php - 使用 $_SERVER ['DOCUMENT_ROOT' 时 CSS 不做它的事情]

jquery - 按钮在 1199 和 768px 之间停止工作

javascript - 我必须使用 <a> 标签吗?我不能只使用 .click() 吗?

javascript - 通过页面刷新使用 JQuery 保留添加的类

javascript - 复制到剪贴板并在 Excel 中呈现为链接

c# - 在 C# MVC 中渲染部分 View 后触发 javascript 函数

jquery - float DIV的对齐问题

css - 如何在 Kendo UI Grid 中扩展过滤器菜单的宽度

html - Firefox 不会并排放置我的 div