最近由腾讯网(www.QQ.com)首页更新改版一个偶然的机会,本人发现了一个严重IE6下BUG。网站首页顶部导航条以及backToTop返回顶部的按钮,在IE6下拉动滚动条的瞬间会有很明显的“振动”感,导致用户体检及其不佳~~ 作为国内互联网的“领军者”这样的用户体验实在让人感觉到“糟糕”,IE6目前在国内还是占有一定份额的市场,虽然IE6很不具有“规范性”,但是抛下IE6就等于抛下潜在的很多用户……

接下来本人就基于JQuery实现出兼容性相对良好的backtotop及topnav应用~~~

望:大家借鉴优点、或者批评指正~~~~~

 

解决了IE6下的诸多问题【包括】:

1. IE6下拉动滚动条时的“振动问题”

2. IE6下PNG不透明的问题

3. IE6下position:fixed; 无法正确定位的问题

4. IE6下a:hover 或者是JQ定于更改或者add新样式PNG无法透明的问题(以一种新思路应对over对象PNG透明的解决方案—很有效!)

解决了IE7下的部分问题【包括】:

1. font-size:0px; 在IE7下失效的问题

=======================================================================

当前已经升级到:1.1版本!更新时间:2012-09-01

=======================================================================

腾讯网的顶部快速导航菜单和backtotop按钮在IE6下“振动”问题严重:

在IE6下实现之后BLOG截图:

经过上时间多次测试,分别兼容一下浏览器【其中还包括IE6内核的360浏览器=世界之窗-遨游等……】:

代码与网友分享:

=============================================================================

CSS样式代码分享:
===========================================================================

CSS代码
  1. /*******************************  
  2. * Jquery时间插件  
  3. * The author's blog:liuxinxiu.com  
  4. * The author LiuXinXiu  
  5. * Writing time:2012-08-30  
  6. * UpdateTime:2012-08-31  
  7. * version:backtotop_scroll.1.0.css  
  8. *******************************/   
  9.   
  10. *{padding:0; margin:0}   
  11. .bodybg{height:2000px;background:#2B2B2B}   
  12. .hide{display:none;}   
  13. *html,*html body /* 修正IE6振动bug */{background-image:url(about:blank);background-attachment:fixed;}   
  14. #liuxinxiu-top-nav{position:fixed;top:0px;z-index:9991;height:30px;width:100%;}   
  15. #liuxinxiu-top-nav .box{height:25px;width:100%;background:url(../images/nav-box-bg.png) repeat-x #218A9C;top:0;filter:alpha(opacity=40);-moz-opacity:0.5;opacity:0.5;}   
  16. #liuxinxiu-top-nav .menutop .content{position:absolute;z-index:9993;width:563px;height:46px;left:50%;margin-left:-281px;background:url(../images/top-menu-bg.png) no-   
  17.   
  18. repeat scroll 0 -51px transparent;}   
  19.   
  20. #liuxinxiu-top-nav .menutop .content a{background:url(../images/top-menu-bg.png) no-repeat scroll 0 0   
  21.   
  22. transparent;width:111px;height:46px;overflow:hidden;display:block;text-align:center;text-decoration:none;font-size:0;text-indent/*ie6 not*/:-900px;float:left;}   
  23. /*IE6*/   
  24. /*************************************  
  25. *html #liuxinxiu-top-nav .menutop .content a{width:105px;height:25px;line-height:25px;_font-size:12px;_text-indent:0px;background-image:none;background-  
  26.  
  27. color:#f5f5f5;color:#0A6575;border:1px solid #005868;_margin-left:-1px;}  
  28. *************************************/   
  29.   
  30. /*IE6*/   
  31. *html #liuxinxiu-top-nav .menutop .content a:hover{background-color:#087082;color:#fff}   
  32. #liuxinxiu-top-nav .menutop .content #A{background-position: 0 0;}   
  33. #liuxinxiu-top-nav .menutop .content #B{background-position: -111px 0;}   
  34. #liuxinxiu-top-nav .menutop .content #C{background-position:-222px 0;}   
  35. #liuxinxiu-top-nav .menutop .content #D{background-position:-333px 0;}   
  36. #liuxinxiu-top-nav .menutop .content #E{background-position:-444px 0;}   
  37. #liuxinxiu-top-nav .menutop .content .overlink{background:none !important;}   
  38. #liuxinxiu-top-nav .bor{height:0px;overflow:hidden;}   
  39. /*IE6*/   
  40. *html #liuxinxiu-top-nav{position:absolute;height:46px;z-index:9991;bottombottom:auto;top:expression(eval(document.documentElement.scrollTop));}   
  41. /*************************************  
  42. back-To-Top Style  
  43. *************************************/   
  44.   
  45. #liuxinxiu-to-top{position:fixed;bottombottom:0px;rightright:10px;z-index:999;width:71pxcursor:pointerdisplay:none;}   
  46. *html #liuxinxiu-to-top{position:absolute;bottombottom:auto;top:expression(eval(document.documentElement.scrollTop+document.documentElement.clientHeight-this.offsetHeight-   
  47.   
  48. (parseInt(this.currentStyle.marginTop,10)||0)-(parseInt(this.currentStyle.marginBottom,10)||0)));}   
  49. .liuxinxiu-to-top-img {display:block;width:71px;height:24px;padding-top:48px;text-align:center;color:#888;backgroundurl("../images/top.png"no-repeat scroll -88px 0   
  50.   
  51. transparent;cursorpointer;positionfixed;}   
  52. .liuxinxiu-to-top-over{background-position: 0 0 !important;text-decoration:none;color:#3a9}   

 

JQ代码分享:
===========================================================================

JavaScript代码
  1. /*******************************  
  2. * Jquery时间插件  
  3. * The author's blog:liuxinxiu.com  
  4. * The author LiuXinXiu  
  5. * Writing time:2012-08-30  
  6. * UpdateTime:2012-08-31  
  7. * version:backtotop_scroll.1.0.js  
  8. *******************************/    
  9. $(function() {    
  10. $.fn.manhuatoTop = function(options) {    
  11. var defaults = {    
  12. showHeight : 150,    
  13. speed : 1000    
  14. };    
  15.     
  16. var options = $.extend(defaults,options);    
  17. $("body").prepend("<div id='liuxinxiu-to-top' class='liuxinxiu-to-top-img'></div>");    
  18. var $toTop = $(this);    
  19. var $gtop = $("#liuxinxiu-to-top");    
  20. var $tnav = $("#liuxinxiu-top-nav");    
  21. var $over = $("#liuxinxiu-to-top-over");    
  22. $toTop.scroll(function(){    
  23. var scrolltop=$(this).scrollTop();    
  24. if(scrolltop>=options.showHeight){    
  25. $gtop.slideDown(500);    
  26. $("#liuxinxiu-top-nav").slideDown(500);    
  27. }    
  28.     
  29. else{    
  30. $gtop.slideUp(500);    
  31. $("#liuxinxiu-top-nav").slideUp(500);    
  32. }    
  33.     
  34. });    
  35.     
  36. $gtop.hover(function(){    
  37. $(this).addClass("liuxinxiu-to-top-over");    
  38. },function(){    
  39.     
  40. $(this).removeClass("liuxinxiu-to-top-over");    
  41. });    
  42.     
  43. $gtop.click(function(){    
  44. $("html,body").animate({scrollTop: 0}, options.speed);    
  45.     
  46. });    
  47. }    
  48.     
  49. });    
  50.     
  51.     
  52.     
  53.     
  54. $(function() {    
  55. var $nava = $("#liuxinxiu-top-nav .menutop .content a");    
  56. $nava.hover(function(){    
  57. $(this).addClass("overlink");    
  58. },function(){    
  59. $(this).removeClass("overlink");    
  60. });    
  61.     
  62. });  

 

========================================================================

1.1版本已经更新截图如下:

个人日志 | 评论(0) | 引用(0) | 阅读(5872)