2013-09-02 7 views
0

У меня есть проблемы со следующим кодом:вручную вызов парение не работает

<li> 
    <a href="http://example.com" id="webd"> 
     <span class="hot">W</span>eb Development 
    </a> 
</li> 
.................. 
<p class='web' > Web for all</p> 

CSS файл:

.hover { 
    background: #000; 
} 

.hot{ 
    text-decoration:underline; 
}` 

Javascript файл:

$('body').keypress(function(event){ 
    if(String.fromCharCode(event.which)=="w" || String.fromCharCode(event.which)=="W") 
    { 
     $('#webd').hover(); 
    }........ 
    ..... 
    } 
    $('#webd').hover(function(event) 
    { 
     $('.web').show(); 
     $('.prog').hide(); 
     $('.rdbms').hide(); 
     $('#webd').addClass('hover'); 
    }, function() 
    { 
     $('#webd').removeClass('hover'); 
    }); 

Даже хотя с

alert(String.fromCharCode(event.which)) 

Я получаю w или W ручное вызов hover() не работает. Текст «Веб для всех» не отображается ....

Может ли кто-нибудь объяснить это? Заранее спасибо!

+0

Там разница между классы и псевдоклассы. –

ответ

2

парения это не событие, это короткая рука для регистрации MouseEnter и MouseLeave обработчиков событий

Так запускают MouseEnter/MouseLeave события

$('#webd').mouseenter();//or $('#webd').trigger('mouseenter'); 

Демо: Fiddle

+0

Это сработало! Большое спасибо!! Теперь я вижу, почему зависание не сработало –

+0

последнее. теперь цвет фона для зависающего элемента не изменяется, когда я оставляю тот же самый элемент. Знаете ли вы, что это причина этого? –

+0

ОК я сделал это с помощью мыши. –

Смежные вопросы