ЙажаСценарий / Говнокод #22102 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
function ToRgb ( color ) {
	var I = document.createElement( "DIV" );
	var R = null;
	I.style.backgroundColor = color;
	document.documentElement.appendChild( I );
	R = window.getComputedStyle ? getComputedStyle( I ).backgroundColor : ToRgb.ifFuckingIE( I );
	document.documentElement.removeChild( I );
	return R;
}

ToRgb.ifFuckingIE = function ( damn ) {
	damn = damn.currentStyle.backgroundColor.match( /(\w{2})/g );
	for ( var i = 0; i < 3; i++ ) {
		damn[i] = parseInt( damn[i], 16 );
	}
	return "rgb(" + damn[0] + ", " + damn[1] + ", " + damn[2] + ")";
};

переводим цвет в формат rgb()
у человека явно личные счёты с ИЕ :)

Запостил: DiphenylOxalate DiphenylOxalate, (Updated )

Комментарии (4) RSS

  • увы, строковые константы в ie не заработают
    Ответить
      • судя по коду, автор ожидает, что /(\w{2})/g всегда найдёт как минимум 6 символов в строке, т е строки вида "red" по идее должны бросать эксепшен при попытке сделать damn[i].

        хотя currentStyle.backgroundColor может автоматицки конвертировать в хексы
        Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8