Witam , mam taki skrypt ktory powoduje wyswietlenie swf zawsze na dole ekranu oraz przewija go razem ze strona. Problem w tym ze jesli go dam gdzies w sekcji head albo body to widac, ze skrypt nie obliczyl sobie wartosci polozenia i tym samym swf ma poloznie nie takie jak trzeba i nie jest scrollowany. Jesli dam go przed tagiem <html> wsio jest ok. O co tu biega ?

  1. <?php
  2. <script language=javascript>
  3. var adsImg="baner.swf";
  4. var adsHref="http://www.strona.pl/";
  5. var adHeight= 30;
  6. var adsWidth= 1280;
  7.  
  8. var adContent='<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0" ID="DUGWQUZRJLCLERBKZRIBMXYCRXXTRK" width="'+adsWidth+'" height="'+adHeight+'">';
  9. adContent+='<param name=movie value="'+adsImg+'?clickTag='+adsHref+'"><param name=quality value=high><param name=wmode value=opaque><param name="menu" value="false">';
  10. adContent+='<embed wmode=transparent NAME="DUGWQUZRJLCLERBKZRIBMXYCRXXTRK" ID="DUGWQUZRJLCLERBKZRIBMXYCRXXTRK" src="'+adsImg+'?clickTag='+adsHref+'" quality=high swLiveConnect=true pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="'+adsWidth+'" height="'+adHeight+'"></embed></OBJECT>';
  11. var iedom=document.all||document.getElementById;
  12. var aWidth='';
  13. var sfContainer;
  14.  
  15. if (iedom) {
  16. document.write('<div id="adContainer" style="visibility:hidden; overflow:hidden; position:absolute; height:'+eval(adHeight+15)+'px">');
  17. document.write('<div align=right><img style="cursor: pointer" src="scrollfooter_FLASH_Zamknij.gif" width="14" height="14" border="0" onclick="hide()"></div>');
  18. document.write('<div id=adLayer0 align=right>'+adContent+'</div></div>')
  19. }
  20.  
  21. function FixPositionAd(){
  22.  aWidth=document.body.clientWidth;
  23.  sfContainer.style.width=aWidth;
  24.  sfContainer.style.left=0;
  25.  sfContainer.style.top=document.body.scrollTop+document.body.clientHeight-adHeight-15
  26. }
  27.  
  28. function InitializeAd() {
  29. sfContainer=document.getElementById?document.getElementById("adContainer") : document.all.adContainer
  30. FixPositionAd();
  31. sfContainer.style.visibility='visible';
  32.  }
  33.  
  34. function hide(){
  35. if (sfContainer) sfContainer.style.visibility='hidden';
  36. }
  37.  
  38. if (iedom) {
  39. if (window.attachEvent) {
  40. window.attachEvent("onscroll", FixPositionAd);
  41. window.attachEvent("onresize", FixPositionAd);
  42. window.attachEvent("onload",InitializeAd);
  43. } else {
  44. window.onscroll=FixPositionAd;
  45. window.onresize=FixPositionAd;
  46. window.onload=InitializeAd
  47. }}
  48.  
  49. </script>
  50. ?>


ok wylapalem o co chodzi,
pierwotnie mialem:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

gdy zmienilem tag na:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

wszystko bylo ok i skrypt moglem odpalac w dowolnym miejscu, tyle ze czcionka standartowa jest jakas wieksza o 3 px , dlaczego ? w css mam zapisane ze body, html maja miec czcionke o wymiarze 9 px a tu widze po zmianianie tagu czcionke standartowo 12px. Czemu tak ?