Запуск: зависание на втором элементе при наведении на первый - PullRequest
1 голос
/ 20 января 2010

У меня есть эта тестовая страница: http://joshuacody.net/qworky/

Предупреждение: Тонны CSS3. Это будет выглядеть только в Safari или Chrome. Firefox будет терпимым. Все остальное будет потеряно.

В сущности, когда я наведите курсор на чье-то имя, я бы хотел, чтобы оно также вызывало состояние наведения на их изображении. Это работает сейчас, но я чувствую, что решение не элегантно. Я бы предпочел не добавлять больше классов. Вот оно:

$('a.name_link').hover(function(){
    $(this).parent('p').siblings('img').toggleClass('link_hover');
});

$('img.name_img').hover(function(){
    $(this).siblings('p').children('a').toggleClass('hover');
});

Я думал, что будет работать следующее:

$('a.name_link').hover(function(){
    $(this).parent('p').siblings('img').trigger('hover');
});

Есть идеи, почему это не так? Я действительно ищу самый чистый, самый простой способ сделать это. Большое спасибо!

Ответы [ 3 ]

0 голосов
/ 20 января 2010

Вместо одной функции предполагается, что функция наведения имеет 2 функции.Попробуйте поставить обе функции там.

0 голосов
/ 22 февраля 2010

Оказывается, я мог бы просто переделать свой CSS, чтобы сделать это, поместив img внутри тега привязки.

0 голосов
/ 20 января 2010

Из того, что я понимаю, метод jquery hover заключается в том, что он принимает две функции </p> <pre> $('a.name_link').hover( //mouse over function(){ $(this).parent('p').sibling('img').toggleClass('link_hover'); }, // mouse out function(){ } ); </pre> <p>

, поскольку вы объявляете только первый метод, тогда, возможно, вам следует попробовать вызвать метод наведения мыши

$('a.name_link').hover(function(){
     $(this).parent('p').siblings('img').trigger('mouseover');
});

...