2

我对一些 CSS IE7 兼容性问题感到疯狂,所以我选择在那个问题上使用 javascript。

这是我的代码:

// fix ie7 menu
if ($('html').hasClass('ie7')) {
    var submenus = $('header .menu > li > ul.sub-menu');
    $.each(submenus,function(key,submenu){
        var w = $(submenu).width();
        $(submenu).children('li').css('width','300px');
        alert(key+" submenu li "+$(submenu).children('li').width());
    });
}

如您所见,我试图强制 ul.sub-menu 元素的子元素采用其父元素的宽度 (w)。没有运气,所以我硬编码了“300px”值以进行测试。然后我尝试了“300”。依然没有。

我的 $(submenu).children('li') 元素怎么可能没有 300px 的宽度?我在 Chrome 中测试了这段代码,效果很好。

谢谢。

4

1 回答 1

0
if ($('html').hasClass('ie7')) {
var submenus = $('header .menu > li > ul.sub-menu');
submenus.each(function(){
    var w=$(this).width();
    $(this).children('li').css('width',w+'px');
});
}
于 2013-03-25T15:54:35.603 回答