0

私には何らかの形があります。このフォームのすべての要素の backgroundColor を確認する必要があります。ただし、一部の要素では色が で定義され<style>、別の要素では色が css で定義されます。2 つのメソッドを 1 つにマージする必要があります (Selenium IDE で)

これが私の方法です:

1(.style):

var form = window.document.forms[0]; 
elements = form.elements; 
for (var i = 0, len = elements.length; i < len; i++) {
    color = elements[i].style.backgroundColor;
}

2(.getcomputedstyle):

var form = window.document.forms[0]; 
elements = form.elements; 
for (var i = 0, len = elements.length; i < len; i++) {
var color = window.document.defaultView.getComputedStyle(elements[i])
        .getPropertyValue('background-color');
var colorArr = color.replace(/[\\rrgb\\(\\)]/g, '').split(','); 
var hexString = '#'
        + parseInt(colorArr[0]).toString(16)
        + parseInt(colorArr[1]).toString(16)
        + parseInt(colorArr[2]).toString(16);
}
4

1 に答える 1

2

2 番目の方法は、ブラウザーに実際に表示されている色を取得することです (インライン スタイル、または内部および/または外部 css から取得される可能性があります)。 )。そして、2番目の方法はすでにRGB値を16進数に変換しています(逆に必要ですか?)

于 2012-06-05T10:41:26.663 に答える