Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.05.2011, 01:01
Аватар для Slawaq
Профессор
Отправить личное сообщение для Slawaq Посмотреть профиль Найти все сообщения от Slawaq
 
Регистрация: 19.05.2010
Сообщений: 187

onmouseout with 2 image =)
<img id="img0" src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" width="100" height="100" /><br/>
<img id="img1" src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" width="100" height="100" />
<script>
to=150;
mouseover=new Array(false,false);
for(i=0;i<2;i++){
    e=document.getElementById('img'+i);
    e.onmouseover=function(){
    e=this;
    id=e.id.substring(3);
    per=to/100;
    a=100;
    b=100;
    mouseover[id]=true;
    setTimeout(function(){
        if((e.width<(a*per))&&(mouseover[id])){
            e.width++;
            e.height++;
            setTimeout(arguments.callee,50);
        }    
        
    },50)
    }
    e.onmouseout=function(){
    e=this;
    id=e.id.substring(3);
    per=to/100;
    a=100;
    b=100;
    mouseover[id]=false;
    alert("real width: "+e.width+" > "+a+"; MouseOnImage: "+mouseover[id])
    setTimeout(function(){
        if((e.width>a)&&(!mouseover[id])){
            e.width--;
            e.height--;
            setTimeout(arguments.callee,50);
        }    
        
    },50)
    }
}

</script>

если навести курсор на картинку то она увеличивается, когда увести то уменьшается, но если увести на другую картинку, то уменьшение не произойдет, вопрос почему? ведь условия рекурсии будут соблюдаться, и будут одинаковы что уводишь на белый фон, что на другую картинку
__________________
java.Uprise.*
Ответить с цитированием
  #2 (permalink)  
Старый 22.05.2011, 01:46
Кандидат Javascript-наук
Отправить личное сообщение для ArmagedDance Посмотреть профиль Найти все сообщения от ArmagedDance
 
Регистрация: 07.12.2009
Сообщений: 147

У меня в опера 11 уменьшение происходит в обоих случаях.
Ответить с цитированием
  #3 (permalink)  
Старый 22.05.2011, 01:53
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Чел, ты совсем не двигаешься в javascript! Пару дней назад был год, как ты зарегился на форуме, то есть ты уже не первый день пишешь на javascript, и делаешь тупейшие ошибки. Рекомендую задуматься...
Собственно, почему ты забил на переменные??? Очевидно, потому что ты не понимаешь, зачем они нужны, чем отличаются от свойств глобального объекта и пр. Как итог: у тебя все функции используют одно и тоже свойство window.e.
Ответить с цитированием
  #4 (permalink)  
Старый 22.05.2011, 11:52
Аватар для Slawaq
Профессор
Отправить личное сообщение для Slawaq Посмотреть профиль Найти все сообщения от Slawaq
 
Регистрация: 19.05.2010
Сообщений: 187

спасибо за просвещение =))
от что вышло, теперь работает:
<img id="img0" src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" width="100" height="100" /><br/><hr/>
<img id="img1" src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" width="100" height="100" />
<script>
var to=150;
var e=Array(document.getElementById('img'+0),document.getElementById('img'+1));
var mouseover=new Array(false,false);
for(i=0;i<2;i++){
    e[i].onmouseover=function(){
    var n=this.id.substring(3);
    per=to/100;
    a=100;
    b=100;
    mouseover[n]=true;
    setTimeout(function(){
        if((e[n].width<(a*per))&&(mouseover[n])){
            e[n].width+=4;
            e[n].height+=4;
            setTimeout(arguments.callee,50);
        }    
        
    },50)
    }
    e[i].onmouseout=function(){
    var n=this.id.substring(3);
    mouseover[n]=false;
    per=to/100;
    a=100;
    b=100;
    setTimeout(function(){
        if((e[n].width>a)&&(!mouseover[n])){
            e[n].width-=4;
            e[n].height-=4;
            setTimeout(arguments.callee,50);
        }    
        
    },50)
    }
}

</script>
__________________
java.Uprise.*
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоматическая смена картинок через заданное время herotic Элементы интерфейса 45 15.05.2020 16:44
onmouseout для ячейки таблицы. Sir_Hally Events/DOM/Window 2 24.01.2012 17:21
onmouseout with image Slawaq Events/DOM/Window 3 21.05.2011 01:03
Кто нибудь подскажет onmouseout при ul > li > ul, или все Великие kudenv Элементы интерфейса 2 12.03.2011 12:34
Проблемы с отработкой onmouseout micscr Events/DOM/Window 5 22.09.2009 18:19