javascript中有没有办法为不同的文本值在按钮上设置不同的颜色

javascript中有没有办法为不同的文本值在按钮上设置不同的颜色,javascript,Javascript,只有那些按钮的颜色和github标记的测试值相同 提前感谢。您应该先自己尝试,并在提问时分享您的代码。 获取所有按钮,比较这些文本值并设置背景色 function changeButtonsBgColors() { var buttons = document.getElementsByTagName('button'); for (var i = 0; i < buttons.length; i++) { v

只有那些按钮的颜色和github标记的测试值相同


提前感谢。

您应该先自己尝试,并在提问时分享您的代码。

获取所有按钮,比较这些文本值并设置背景色

function changeButtonsBgColors() {
            var buttons = document.getElementsByTagName('button');
            for (var i = 0; i < buttons.length; i++) {
                var button = buttons[i];
                if (button.value == "Close") button.style.background = '#C0C0C0';
                else if (button.value == "Ok") button.style.background = '#33FF3F';
                else if (button.value == "Done") button.style.background = '#4AC91B';
                else if (button.value == "Delete") button.style.background = '#FF0000';
            }
}
函数changebutonsbgcolors(){
var buttons=document.getElementsByTagName('button');
对于(变量i=0;i

请记住将此代码放在
onload
事件中或页面底部。

这是完全可行的。假设您使用的是jquery,它将如下所示:

var bttnText = $('.button-class').html();
if(bttnText == 'some text'){
    $('.button-class').addClass('some-class');
}

假设您使用的是jQuery,请尝试以下操作:它将使用任何带有类颜色文本的标签,并为其指定随机颜色,如果它与另一个标签的文本匹配,则将使用相同的颜色。下面是一个JSFIDLE链接,看看它是如何工作的

$(文档).ready(函数(){
var颜色=[];
$(“.color text”).each(函数(键、值){
如果(颜色[$(值).text()){
$(value.css('color',colors[$(this.text());
}否则{
var color=getRandomColor();
$(值).css('color',color);
颜色[$(值).text()]=颜色;
}
});
});
函数getRandomColor(){
变量字母='0123456789ABCDEF';
var color='#';
对于(变量i=0;i<6;i++){
颜色+=字母[Math.floor(Math.random()*16)];
}
返回颜色;
}

是,这是可能的。但是你的代码在哪里?欢迎来到stack overflow:-)“请给我代码”不是这个网站的工作方式。看看
$(document).ready(function() {
    var colors = [];
    $(".color-text").each(function(key,value){  
    if(colors[$(value).text()]) {
      $(value).css('color', colors[$(this).text()]);
    } else {
      var color = getRandomColor();
      $(value).css('color', color);
      colors[$(value).text()] = color;
    }
  });
});

function getRandomColor() {
        var letters = '0123456789ABCDEF';
        var color = '#';
        for (var i = 0; i < 6; i++ ) {
        color += letters[Math.floor(Math.random() * 16)];
    }
    return color;
}