IE7啊 真是个磨人的小妖精 网上冲了很久浪没找到解决原因 其实很简单 控制台打开 犀利的小箭头一点 发现是IE7下给元素加了偏移值 只能一个一个元素把偏移值归为0
if(navigator.appName == "Microsoft Internet Explorer"&&parseInt(navigator.appVersion.split(";")[1].replace(/[ ]/g, "").replace("MSIE","")) == 7){ $(".jiaoyi p").offset({top: 492, left: 361}); $(".level1 ul").offset({left:0}); for( var i=0;i<$(".menu .level1").length;i++ ){ $($(".menu .level1")[i]).find("a").offset({left:0}); $($(".menu .level1")[i]).find("a").css({"margin-top":"0","color":""}); $($(".menu .level1")[i]).click(function(){ $(this).find("a").offset({left:0}); $(this).find("a").css({"margin-top":"0"}); $(".level1 ul").offset({left:0}); $(".level1 ul a").offset({left:0}); }) } }重点就是 .offset({left:0}); 还有需要注意的是 IE7不能用jq的each语法 就是这个 坑了我一下午 [微笑] 我不生气