Вот спер недвно с какого - то бесплатного комплекта
Код | function $() { var elements = new Array();
for (var i = 0; i < arguments.length; i++) { var element = arguments[i]; if (typeof element == 'string') element = document.getElementById(element);
if (arguments.length == 1) return element;
elements.push(element); }
return elements; }
function setOpacity(element, value) { element= $(element); if (value == 1){ setStyle(element, { opacity: (/Gecko/.test(navigator.userAgent) && !/Konqueror|Safari|KHTML|Opera/.test(navigator.userAgent)) ? 0.999999 : null }); if(/MSIE/.test(navigator.userAgent)) setStyle(element, {filter: getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')}); } else { if(value < 0.00001) value = 0; setStyle(element, {opacity: value}); if(/MSIE/.test(navigator.userAgent)) setStyle(element, { filter: getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'') + 'alpha(opacity='+value*100+')' }); } }
function getOpacity(element) { var opacity; if (opacity = getStyle(element, 'opacity')) return parseFloat(opacity); if (opacity = (getStyle(element, 'filter') || '').match(/alpha\(opacity=(.*)\)/)) if(opacity[1]) return parseFloat(opacity[1]) / 100; return 1.0; }
function getStyle(element, style) { element = $(element); var value = element.style[style]; if (!value) { if (document.defaultView && document.defaultView.getComputedStyle) { var css = document.defaultView.getComputedStyle(element, null); value = css ? css.getPropertyValue(style) : null; } else if (element.currentStyle) { value = element.currentStyle[style]; } }
if (window.opera && ['left', 'top', 'right', 'bottom'].include(style)) if (Element.getStyle(element, 'position') == 'static') value = 'auto';
return value == 'auto' ? null : value; }
function setStyle(element, style) { element = $(element); for (name in style) element.style[name] = style[name]; }
|
В данном случае нас интересует setOpacity(elem, value). value выставляется от 0 до 1. Работает во всех современных браузерах. Добавлено @ 19:09 Блин пока ответа на свой вопрос дождешься уже 10 другим выдашь . |