js调用js广告文件,广告显示位置错行
home.html文件
<html>
<head>
<LINK href= "../images/skinred/style.css " type=text/css rel=stylesheet>
</head>
<body>
<SCRIPT src= "../jsasp/topdao2.js " language= "javascript "> </SCRIPT>
以上是home.html文件,这个文件调用了topdao2.js文件,topdao2.js是网页顶部文件,包括logo和468×60的广告位置和加入收藏栏。
document.writeln( " <LINK href=\ "..\/images\/skinred\/style.css\ " type=text\/css rel=stylesheet> ");
document.writeln( " <div id=\ "toplogo\ "> <table width=\ "766\ " border=\ "0\ " cellpadding=\ "0\ " cellspacing=\ "0\ "> ");
document.writeln( " <tr> <td width=\ "210\ "> <img src=\ "..\/images\/skinred\/logo.gif\ " height=\ "63\ " width=\ "210\ " border=\ "0\ "> <\/td> ");
document.writeln( " <td width=\ "468\ " height=\ "60\ " align=\ "center\ "> ");
document.write( ' <script src= "/ad/js/guang1a.js "> </scr '+ 'ipt> ');document.writeln( " <\/td> ");
document.writeln( " <td width=\ "5\ "> <\/td> ");
document.writeln( " <td> 加入收藏 <\/td> ");
document.writeln( " <\/tr> <\/table> <\/div> ");
以上是topdao2.js文件,在这个文件里调用了guang1a.js文件,guang1a.js是广告代码文件
guang1a.js文件
document.writeln( " <img src=http:\/\/www.test.com\/ads\/s.gif border=0 width=468 height=60> ")
以上是guang1a.js文件,调用了广告的代码。
显示出来的效果却是广告窗口自成一行,在logo行的正文,没有按要求和logo在同一行中显示。如果把topdao2.js的代码转成topdao2.html,并单独执行的话,那么虽然topdao.html里调用了guang1a.js,但广告窗口和logo在同一行中显示达到预期效果。
为了方便的管理广告并加快显示速度,我采用了主文件调用顶部js文件,顶部js文件调用广告js文件,但广告显示的位置却自成一行,没有在设定的td里,请指教,非常感谢!
------解决方案--------------------topdao2.js的内容扩大,把guang1a.js的内容写进去就行了
------解决方案--------------------采用布局和数据分离。
不要用document.writeln这样的句子来输出。
而用类似document.getElementById( "logo ").innerHTML= "aaa ";这样的来填充
主页布局如下:
<div id=logo> </div> <div id=ad> </div>
然后在js里
function showheader(){
logo_str= "你在logo里要显示的东西,其实就是你document.write输出的改为字符串 "
document.getElementById( "logo ").innerHTML=write_str;
ad_str= "你的广告内容 ";
document.getElementById( "logo ").innerHTML=write_str;
}
然后在文档里包含对应的js,并且在window.onload里调用showheader(),而div块logo和ad的样式用css来定义。这样布局和数据分离就简单了。