Как получить шестнадцатеричное значение цвета элемента с транспортиром?
Я хочу получить цвет фона элемента в 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 );
});