jQuery - зависший вопрос IE - PullRequest
       2

jQuery - зависший вопрос IE

0 голосов
/ 15 ноября 2011

У меня есть пользовательское меню в jQuery, которое, по-видимому, не работает с IE 8 и 9. Предполагается, что многоуровневые меню открываются с помощью метода hover(), но оно работает только в IE, пока не будет получен первый уровень от корня.

Код:

$('ul#leftmenu li').hover(function() {
        if ($(this).hasClass('top'))
            return false;

        var p = $(this).parent().get(0);
        var o = $(this).offset();
        var t;
        var l;

        if (leftmenu_level >= 1)
        {
            t = 0;
            l = 210;
        }
        else
        {
            leftmenu.top = o.top;
            leftmenu.left = o.left;
            t = o.top;
            l = o.left + 210;
        }

        $(this).find('ul:first').css({
            position : 'absolute',
            top : t,
            left : l
        }).show();

        $(this).find('a:first').css('color', '#5a3512');
        leftmenu_level++;

                return true;
    }, function() {
        if ($(this).hasClass('top'))
            return false;

        $(this).find('a:first').css('color', '#777777');
        leftmenu_level--;

        $(this).find('ul:first').hide();

                return true;
    }
);

Пример в реальном времени (левое меню):

http://lrp -workwear.com /

Любойсоветы?

1 Ответ

1 голос
/ 15 ноября 2011

Попробуйте применить position:relative к вашим тегам привязки, это, кажется, корректно устанавливает ширину и высоту тегов привязки и вызывает наведение на весь элемент, а не только на текст, как это в настоящее время кажется.

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...