div+css下js对联广告不随屏幕滚动的解决方法_Div+CSS教程

编辑Tag赚U币

在页面上加了对联广告后发现不滚动,找了N久才发现是

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 

这句导致不滚动的,可是如果去掉的话对于用DIV+CSS开发的网站来说又是灾难要另外找解决办法,应该是JS里有代码不符合W3C的标准

找了资料才知道是document.body不符合标准,换成document.documentElement就可以了.以下为JS原文件,只要在首页调用就OK了。

  1. <SCRIPT FOR='xuangua' EVENT='fscommand()' LANGUAGE='JavaScript'> 
  2. AdLayer1.style.visibility='hidden'; 
  3. AdLayer2.style.visibility='hidden'; 
  4. </script> 
  5. <script LANGUAGE='JavaScript'> 
  6. function initEcAd() { 
  7. document.all.AdLayer1.style.posTop = -200; 
  8. document.all.AdLayer1.style.visibility = 'visible' 
  9. document.all.AdLayer2.style.posTop = -200; 
  10. document.all.AdLayer2.style.visibility = 'visible' 
  11. //document.all.AdLayer3.style.posTop = -600; 
  12. //document.all.AdLayer3.style.visibility = 'visible' 
  13.  
  14. MoveLeftLayer('AdLayer1'); 
  15. MoveRightLayer('AdLayer2'); 
  16.  
  17. //MoveRightbuttonLayer('AdLayer3'); 
  18. } 
  19. function MoveLeftLayer(layerName) { 
  20. var x = 5; 
  21. var y = 100; 
  22. var diff = (document.documentElement.scrollTop + y - document.all.AdLayer1.style.posTop)*.40; 
  23. var y = document.documentElement.scrollTop + y - diff; 
  24. if(screen.height<768){ 
  25. var y = 50; 
  26. var diff = (document.documentElement.scrollTop + y - document.all.AdLayer1.style.posTop)*.40; 
  27. var y = document.documentElement.scrollTop + y - diff; 
  28. } 
  29. eval("document.all." + layerName + ".style.posTop = y"); 
  30. eval("document.all." + layerName + ".style.posLeft = x"); 
  31. setTimeout("MoveLeftLayer('AdLayer1');", 20); 
  32. } 
  33. function MoveRightLayer(layerName) { 
  34. var x = 5; 
  35. var y = 100; 
  36. var diff = (document.documentElement.scrollTop + y - document.all.AdLayer2.style.posTop)*.40; 
  37. var y = document.documentElement.scrollTop + y - diff; 
  38. if(screen.height<768){ 
  39. var y = 5; 
  40. var diff = (document.documentElement.scrollTop + y - document.all.AdLayer2.style.posTop)*.40; 
  41. var y = document.documentElement.scrollTop + y - diff; 
  42. } 
  43. eval("document.all." + layerName + ".style.posTop = y"); 
  44. eval("document.all." + layerName + ".style.posRight = x"); 
  45. setTimeout("MoveRightLayer('AdLayer2');", 20); 
  46. } 
  47. function MoveRightbuttonLayer(layerName) { 
  48. var x = 5; 
  49. var y = 475; 
  50. var diff = (document.documentElement.scrollTop + y - document.all.AdLayer3.style.posTop)*.40; 
  51. var y = document.documentElement.scrollTop + y - diff; 
  52. if(screen.height<768){ 
  53. var y = 310; 
  54. var diff = (document.documentElement.scrollTop + y - document.all.AdLayer3.style.posTop)*.40; 
  55. var y = document.documentElement.scrollTop + y - diff; 
  56. } 
  57. eval("document.all." + layerName + ".style.posTop = y"); 
  58. eval("document.all." + layerName + ".style.posRight = x"); 
  59. setTimeout("MoveRightbuttonLayer('AdLayer3');", 20); 
  60. } 
  61. </script> 
  62.  
  63. <script language='JavaScript'> 
  64. document.write("<div id=AdLayer1 style='position: absolute;visibility:hidden;z-index:1'><EMBED src='images/duilian.swf' quality=high WIDTH=100 HEIGHT=300 TYPE='application/x-shockwave-flash' id=xuangua></EMBED></div>" 
  65. +"<div id=AdLayer2 style='position: absolute;visibility:hidden;z-index:1'><EMBED src='images/duilian.swf' quality=high WIDTH=100 HEIGHT=300 pluginspage='http://www.macromedia.com/go/getflashplayer' TYPE='application/x-shockwave-flash' id=xuangua></EMBED></div>"); 
  66. initEcAd() 
  67. </script> 


 

 

来源:模板无忧//所属分类:Div+CSS教程/更新时间:2012-05-22
相关Div+CSS教程: