Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> изменение прозрачности 
:(
    Опции темы
rubanok
Дата 21.12.2006, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 21.12.2006

Репутация: нет
Всего: нет



При наведении курсора прозрачность меняется, курсор убираем порзрачность изменяется только на 0.1,
а надо чтобы становилось полность непрозрачным. Неправильно отрабатывает функция opacitNo(id)
Не пойму где ошибка
Как правильно прописать строчку (var opaImg = objImg.style.MozOpacity;) для Opera?
Код

var i = 1;

function opacitYes(id){
    var objImg = document.getElementById('progrey' + id);
    var opaImg = objImg.style.MozOpacity;
    objImg.style.MozOpacity = (opaImg - 0.1);
    i++;
    if(i <= 9) setTimeout('opacitYes(' + id + ')', 50);
    else i = 1;
}

function opacitNo(id){
    var objImg = document.getElementById('progrey' + id);
    var opaImg = objImg.style.MozOpacity;
    
    objImg.style.MozOpacity = (opaImg + 0.1);   //parseInt
    i++;
    if(i <= 9) setTimeout('opacitNo(' + id + ')', 50);
    else i = 1;
}



Это сообщение отредактировал(а) rubanok - 21.12.2006, 18:31
PM MAIL   Вверх
12345c
Дата 21.12.2006, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



opaImg + 0.1 понимается как строка, пишите 0.1+opaImg или 0.1+parseInt(opaImg) .

2) для Оперы 9+ и FF1.0+ - objImg.style.opacity=opac; , поэтому про MozOpacity можно забыть. Но есть ещё IE:

o.filters[0].opacity=opac*100;
PM WWW   Вверх
Aliance
Дата 21.12.2006, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Я делал проще - менял просто применяемый к объекту стиль. ( объект.className )
PM MAIL WWW ICQ Skype   Вверх
rubanok
Дата 22.12.2006, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 21.12.2006

Репутация: нет
Всего: нет



Тоже решил сделать скрипт с помощью изменения классов и все получилось
Еще одна проблемка как определить браузер Opera 8 и 7, если они определяются как Microsoft Internet Explorer

Ниже полный код:

Код

var i = 0;
var a;

function yesTime(id){
    setTimeout('opacitYes(' + id + ')', 200);
}

function opacitYes(id){
    if(a == 1) return;
  var objImg = document.getElementById('progrey' + id);
  objImg.className = ('opac' + i);
    i++;
  if(i <= 11) setTimeout('opacitYes(' + id + ')', 25);
  else i = 11;
}

function opacitNo(id){
    if(a == 0) return;
  var objImg = document.getElementById('progrey' + id);
  objImg.className = ('opac' + i);
  i--;
  if(i >= 1) setTimeout('opacitNo(' + id + ')', 25);
}

Код

.opac1{
    filter:alpha(opacity=100);
    -moz-opacity:1.0;
    opacity:1.0;
}
.opac2{
    filter:alpha(opacity=90);
    -moz-opacity:0.9;
    opacity:0.9;
}
.opac3{
    filter:alpha(opacity=80);
    -moz-opacity:0.8;
    opacity:0.8;
}
.opac4{
    filter:alpha(opacity=70);
    -moz-opacity:0.7;
    opacity:0.7;
}
.opac5{
    filter:alpha(opacity=60);
    -moz-opacity:0.6;
    opacity:0.6;
}
.opac6{
    filter:alpha(opacity=50);
    -moz-opacity:0.5;
    opacity:0.5;
}
.opac7{
    filter:alpha(opacity=40);
    -moz-opacity:0.4;
    opacity:0.4;
}
.opac8{
    filter:alpha(opacity=30);
    -moz-opacity:0.3;
    opacity:0.3;
}
.opac9{
    filter:alpha(opacity=20);
    -moz-opacity:0.2;
    opacity:0.2;
}
.opac10{
    filter:alpha(opacity=10);
    -moz-opacity:0.1;
    opacity:0.1;
}
.opac11{
    filter:alpha(opacity=0);
    -moz-opacity:0.0;
    opacity:0.0;
}

Код

<div style="width:136px;height:89px;background:url(img/temp/procolor1.gif);">
<a href=""><img src="img/temp/progrey1.gif" id="progrey1" class="opac1" onMouseOver="a=0; yesTime(1);" onMouseOut="a=1; opacitNo(1);"></a>
</div>


Это сообщение отредактировал(а) rubanok - 22.12.2006, 13:12
PM MAIL   Вверх
Aliance
Дата 22.12.2006, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Цитата(rubanok @  22.12.2006,  14:10 Найти цитируемый пост)
Еще одна проблемка как определить браузер Opera 8 и 7, если они определяются как Microsoft Internet Explorer

Код

window.opera

PM MAIL WWW ICQ Skype   Вверх
12345c
Дата 22.12.2006, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



Разве это проще - указывать все n классов для прозрачности? Если делать, то динамические стили, которые не будут работать в Опере. Значит, отпадает. Ещё нединамические стили нельзя применить при генерации объекта (не иметь определения стиля, если не надо). Т.е. придётся подгружать стили, даже если ни разу не используется эффект на них.
PM WWW   Вверх
rubanok
Дата 22.12.2006, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 21.12.2006

Репутация: нет
Всего: нет



Спасибо!
Попробую переделать
PM MAIL   Вверх
12345c
Дата 22.12.2006, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



rubanok, я о том, что классы в задачах эффектов перехода вообще невыгодно использовать, по крайней мере, до поры, пока не отомрут Opera7-8-9 и неизвестно какие ещё. Или пока разработчик скрипта не согласится для Оперы сделать "упрощёнку" эффекта.

Сопутствующие ссылки:

http://www.opera.com/docs/specs/opera9/ ,
http://www.opera.com/docs/specs/opera9/css/ - поддержка того-сего Оперой-9.

Динамические стили - http://forum.vingrad.ru/topic-106281.html .

Это сообщение отредактировал(а) 12345c - 22.12.2006, 20:51
PM WWW   Вверх
SelenIT
Дата 22.12.2006, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Имхо, полезное добавление про динамические стили: http://xpoint.ru/know-how/JavaScript/TablitsyiStiley?2


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0965 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.