我在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;
}
);
实例(左侧菜单):
任何提示?
答案 0 :(得分:1)
尝试将position:relative
应用于您的锚标记,这似乎会强制宽度&锚标签的高度正确并触发悬停在整个元素上,而不仅仅是当前正在进行的文本。
希望这有帮助