Как получить шестнадцатеричное значение цвета элемента с транспортиром?

Я хочу получить цвет фона элемента в DOM с помощью транспортира, поэтому я делаю следующее.

var redArc = AESummaryTile.performanceChart.element(by.id('myElement')).getCssValue("background-color");

проблема в том, что он возвращает rgba, а не rgb, что я и хочу. Файл css содержит только шестнадцатеричное значение цвета для этого элемента, и при просмотре страницы я вижу только значение rgb. Есть ли причина, по которой транспортир возвращает rgba вместо rgb.

Я нашел следующие ссылки на преобразование значений, но я хотел бы знать, есть ли лучший способ сделать это с помощью Protactor

javascript - от RGB до Hex и от Hex до RGB, как получить значение Hex вместо RGB

Любая помощь в этом будет оценена

1 ответ

Так как цвета фиксированы, почему бы не использовать rgba вместо преобразования его в hex в вашем коде?

Пример:

var bgColorDeleted = 'rgba(238, 120, 131, 1)'; //Red
var bgColorNormalWhite = 'rgba(255, 255, 255, 1)'; //White

tempObject.elmRow.getCssValue('background-color').then(function(bgColor) {
    expect(bgColor).toBe(bgColorNormalWhite);
}); 

//When marked (to be deleted) it becomes red

tempObject.elmRow.getCssValue('background-color').then(function(bgColor) {
    expect(bgColor).toBe(bgColorDeleted );
}); 
Другие вопросы по тегам