2016-08-22 13 views
-1

Есть ли способ изменить цвет шрифта отдельных .texts в JavaScript? В зависимости от пользовательского ввода может произойти 1 из нескольких вариантов, и я хотел бы изменить цвет в зависимости от выбора. Примечание. CSS может изменять цвет для <td>, но не изменяется в зависимости от выбора.javascript change .text font color

var latedifference = 0; 
    latedifference += late-lates 
    if (late > lates && latedifference <= 2){ 
     $('#lateedge').text('Your Team has the Edge'); 
    }else if (late > lates && latedifference > 2){ 
     $('#lateedge').text('Your Team has a Big Edge'); 
    }else if (lates > late && latedifference < -2){ 
     $('#lateedge').text('Opposing Team has a Big Edge'); 
    }else if (lates === late){ 
     $('#lateedge').text('Teams are Even'); 
    }else { 
     $('#lateedge').text('Opposing Team has the Edge'); 
    } 
+0

Да, вы можете изменить цвет шрифта отдельного текста с помощью js. –

+0

Что такое 'lateedge',' '? –

+0

да, это , изначально это были позиции, но я хотел, чтобы данные шли слева направо, как против сверху вниз, и это просто слишком запутывало на моем веб-сайте, чтобы выровнять его по горизонтали, поэтому я просто сделал таблицу вместо , – Tidesglenn

ответ

1

После .text('Your message') добавить .css('color', '<your color>')

+0

Большое спасибо, я попробовал нечто похожее на это, но я думаю, синтаксис был выключен, вы - спасатель и времяпровождение! – Tidesglenn

1

Вы можете изменить цвет шрифта в том же заявлении, в котором можно изменить текст, либо путем изменения его непосредственно или изменения класса CSS:

if (late > lates && latedifference <= 2){ 
    $('#lateedge').text('Your Team has the Edge'); 
    $('#lateedge').css('color', 'blue'); 
}else if (late > lates && latedifference > 2){ 
    $('#lateedge').text('Your Team has a Big Edge'); 
    $('#lateedge').css('color', 'green') 

    // or, if you have css to go with it 
    // like .big-edge { color: green; } 

    $('#lateedge').toggleClass('big-edge') 
[etc.] 

другой вещь - плохо для производительности, чтобы снова и снова запрашивать $('#lateedge'); вместо этого кешируйте его в начале, поэтому jQuery должен только один раз искать этот селектор.

var latedifference = 0; 
var $td = $('#lateedge'); 

... 
$td.text('Teams are Even') 
+0

Селекторы ID чрезвычайно быстрые, и jQuery выполняет некоторое внутреннее кэширование - в этом случае, вероятно, нет никакой разницы в производительности, тем более, что должен работать только один if-блок. Хотя это * хорошая практика, и она, безусловно, выглядит более чистой и удобной. +1 от меня! –

+0

wow Я очень новичок в jquery и javascript и только начал делать это из-за необходимости для друга мин, но это отличная информация и очень ценится. – Tidesglenn