Плавне поява або зміна прозорості - easy web scripts

Для визначення прозорості в css за логікою має бути властивість opacity (Mozilla, Opera), але розробники IE як завжди виділилися і зробили по іншому. До того ж в IE не всі об'єкти можна зробити прозорими. Нижче наведено приклад
з контейнером span, який в IE6 прозорості не отримує. Дослідити поведінку інших тегів в різних версіях «улюбленого» оглядача, якщо чесно, немає ніякого бажання.

Для встановлення прозорості об'єкта в таблиці стилів потрібно писати:

Прозорість не можна вказувати у відсотках явно. Вона вимірюється: для IE - від 1 до 100, для інших - від 0 до 1.

Наступний скрипт здійснює плавне поява / зникання (читай плавну зміну прозорості) об'єкта:

Використовуючи дані функції можна задати ефект появи / загасання проівольному числу елементів на сторінці. Для цього потрібно встановити у необхідних об'єктів відповідні обробники подій. При виклику функцій не забуваємо встановлювати змінну obj, яка вказує у якого об'єкта буде змінюватися прозорість:

Єдине хіба не краще було б передавати об'єкт в ф-ії appear і disappear інакше якщо скажемо хтось прибере курсор з 1ої речі вона почне стає менш прозорою якесь від час (змінна зберігається в obj) але тепер юзер в той проміжок часу поки йде disapear встигає перевести курсор на ін. елемент викликавши для нього appear і тоді вийде що змінна obj вже буде містити не той об'єкт і в результаті прозорість першого не повернеться в значення за замовчуванням.

Згоден з попереднім, тільки передавати об'єкти в функції setTimeout - завдання не тривіальна. Можливо, в даному випадку простіше передавати id об'єкта або як описано в додатку вище.

Еххх чудовий сайт =) До речі до справи канєшно не відноситься і після написання такої красотульки як це поява але все ж непогано доповнити було б ф-їй для початкового завдання прозорості наприклад такойfunction StartAppear (obj, x)

Блін шкода ВИРІЗАЛО ... повідомлення - в зв'язку з цим питання а як мені написати повідомлення що б воно нормально долше без вирізання тегів а скажімо просто проекраніровалось як-небудь.

ще одне вузьке місце - якщо людина повів курсор з об'єкта, а потім знову поставив на нього - отримуємо зациклення
я вирішив збереженням в глобальну змінну поточної з'являється картинки, і поточної зникаючої і явно відстежує ситуацію рівності цих змінних

Що-то у мене не вийшло (((картинка статична і не змінює свою прозорість (допоможіть може що не так зробив

Цей ефект добре б додати в "менюху нагорі".

Намагався повторити приклад. Зіткнувся з одного дивиною. Якщо властивості стилю задавати в таблиці стилів в заголовку, а потім застосовувати до об'єктів через id або class - то JS значення цієї властивості не побачить, але стиль до об'єкта таким чином, застосовується. alert (document.getElementById ( "id"). style.opacity - порожнеча, хоча в самому об'єкті є св-во .style = [object CSSStyleDeclaration] де ці стилі по ідеї повинні зберігатися. І вони там з'являються, якщо задати opacity в JS явно або зробити атрибут style у тега і прописати властивості там. Може тому у багатьох і не працює цей script. Хотілося б ще зрозуміти чому CSS-стилі себе так ведуть і як їх полікувати від цього. у мене Firefox 3.0.13. Дивився ще в IE6 - той же дефект. Може якісь настройки є чарівні?

А не йде то все тому що d.getElementById в скриптах нужнро змінити в document.getElementById. в файлі all.js цього сайту d = document.