求救:如何向div中写入javascript,并有效执行

upload 2008-04-27 10:32:06
本站使用了部分alimama的广告,因为不想在html中直接显示调用的代码,所以另写了个js文件用于在显示处调用,如:
页面:
...
<td><script src="/adcall.js" type=text/javascript></script></td>
...

adcall.js:
alimama_pid="mm_10653905_728529_2095357";
alimama_titlecolor="707070";
alimama_descolor ="898989";
alimama_bgcolor="FFFFFF";
alimama_bordercolor="FCECD6";
alimama_linkcolor="008000";
alimama_bottomcolor="FFFFFF";
alimama_anglesize="0";
alimama_bgpic="0";
alimama_icon="0";
alimama_sizecode="35";
alimama_width=200;
alimama_height=200;
alimama_type=2;
document.write ("<script src=\'http://a.alimama.cn/inf.js\'></script>");

这样是可以正常显示的.现在想把htm页的代码改成
...
<td><div id="ad1"></div></td>
...
<script src='/call.js'></script>

ad1就是要显示广告的位置
请问:call.js中的内容应该怎么写,该如何把原来的adcall.js的内容调用或写进去??
...全文
862 42 打赏 收藏 转发到动态 举报
写回复
用AI写文章
42 条回复
切换为时间正序
请发表友善的回复…
发表回复
擒兽 2008-05-07
  • 打赏
  • 举报
回复
就只看了主题

eval(代码)
div.innerHTML(代码)

需要两部,收工,睡觉。
fxs_2008 2008-05-07
  • 打赏
  • 举报
回复
好贴,支持一下楼上的!
创造节点最不容易出问题
dandelionl 2008-05-06
  • 打赏
  • 举报
回复
mark
whwqs 2008-05-06
  • 打赏
  • 举报
回复
加一句:
alimama_containerid="newscenter";

即:

alimama_pid="mm_10653905_728529_2095357";
alimama_titlecolor="707070";
alimama_descolor ="898989";
alimama_bgcolor="FFFFFF";
alimama_bordercolor="FCECD6";
alimama_linkcolor="008000";
alimama_bottomcolor="FFFFFF";
alimama_anglesize="0";
alimama_bgpic="0";
alimama_icon="0";
alimama_sizecode="35";
alimama_width=200;
alimama_height=200;
alimama_type=2;

alimama_containerid="newscenter";

var scrip1 = document.createElement("script");
scrip1.src = "http://a.alimama.cn/inf.js";
var divs = document.getElementById("newscenter");
divs.style.position='absolute';
divs.appendChild(scrip1);
lifuyun 2008-05-05
  • 打赏
  • 举报
回复
mark
  • 打赏
  • 举报
回复
然后再看下这个例子

<HTML>
<HEAD>
</HEAD>
<BODY>
<h2 style="background:#FF0000">自然就是美<SCRIPT>
document.getElementsByTagName("H2")(0).innerHTML="<br>\<script defer\>document.write('111') \<\/scr"+"ipt\>"
//document.getElementsByTagName("H2")(0).innerHTML="aaaa"
</SCRIPT> </h2>


<script defer="defer">
var a=document.getElementsByTagName("H2")(0).innerHTML
alert(''+a+'')
</script>
</BODY>
</HTML>
  • 打赏
  • 举报
回复
你再看下我34#的例子你就明白了
  • 打赏
  • 举报
回复
汗!你的方法我没试,我给的方法是可行的
upload 2008-05-03
  • 打赏
  • 举报
回复
是的,我看到了,意思是虽然写进去了,但实际却是读不到值的吗?
那只能在每个要调用的地方分别写script src=...了吗?
如果一个页有多处调用,能否写成script src=t.js?id=xx的方式?怎么获取这个id?
  • 打赏
  • 举报
回复
<HTML>
<HEAD>
</HEAD>
<BODY>
<h2 style="background:#FF0000">自然就是美 </h2>

<SCRIPT>
document.getElementsByTagName("H2")(0).innerHTML="<br>\<script defer\>document.getElementsByTagName('H2')(0).innerHTML='aa'; \<\/scr"+"ipt\>"
</SCRIPT>
<script defer="defer">
var a=document.getElementsByTagName("H2")(0).innerHTML
alert(''+a+'')
</script>
</BODY>
</HTML>
如果是这样的话
那就,那就没问题
  • 打赏
  • 举报
回复
其实document.getElementsByTagName("H2")(0).innerHTML="<br>\<script defer\>document.write('111') \<\/scr"+"ipt\>"
是已经赋值了
  • 打赏
  • 举报
回复
<HTML> 
<HEAD>
</HEAD>
<BODY>
<h2 style="background:#FF0000">自然就是美 </h2>

<SCRIPT>
document.getElementsByTagName("H2")(0).innerHTML="<br>\<script defer\>document.write('111') \<\/scr"+"ipt\>"
//document.getElementsByTagName("H2")(0).innerHTML="aaaa"
</SCRIPT>
<script defer="defer">
var a=document.getElementsByTagName("H2")(0).innerHTML
alert(''+a+'')
</script>
</BODY>
</HTML>

那个是我写错了,你看下这个
  • 打赏
  • 举报
回复
呵呵,你没发现
<script defer="defer">
alert(''+document.getElementsByTagName("H2")(0).innertext+'')
</script>
已经找不到document.getElementsByTagName("H2")(0).innertext?弹出的是undefined
upload 2008-05-03
  • 打赏
  • 举报
回复
是的,效果我是明白的,可就是想不明白为什么不能实现?

为什么innerHTML是调用script的时候就是不行,如果直接改变innerHTML就可以?
  • 打赏
  • 举报
回复
没办法实现

我借在另外一个帖子上我发的例子,在这里给你发,你测试一下就完全明白为什么了


<HTML>
<HEAD>
</HEAD>
<BODY>
<h2 style="background:#FF0000">自然就是美 </h2>

<SCRIPT>
document.getElementsByTagName("H2")(0).innerHTML=" <br>\ <script defer\>document.write('111') \ <\/scr"+"ipt\>"
</SCRIPT>
<script defer="defer">
alert(''+document.getElementsByTagName("H2")(0).innertext+'')
</script>
</BODY>
</HTML>
upload 2008-05-03
  • 打赏
  • 举报
回复
chinmo:
十分感谢您耐心的答复

<script src="/callad/xclove/t.js"> </script>
该JS就是想单独控制每页的广告,会写在每页的足部包含文件中,因此,调用位置只能写在页尾...

难道这样的需求是没法实现的吗,如果是,是什么原因,请详解.多谢.
jackyBody 2008-05-03
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 upload 的回复:]
var scrip1 = document.createElement("script");
scrip1.src = "http://a.alimama.cn/inf.js";
var divs = document.getElementById("newscenter");
divs.style.position='absolute'; //relative
divs.appendChild(scrip1); [/Quote]
正解

显示不正常是。。。。

要什么样子效果?
  • 打赏
  • 举报
回复
不显示在那里是正常的


<table width=778 align=center border=1>
<tr> <td height="200" colspan=2>111 </td> </tr>
<tr> <td width=200>222 </td>
<td> <div id="newscenter"><script src="/callad/xclove/t.js"> </script></div>这里是应该显示广告的位置 </td> </tr>
</table>
放在这里应该就好了
upload 2008-05-03
  • 打赏
  • 举报
回复
谢谢大家,可是仍然解决不了位置的问题,请高手访问以下地址查看效果:
http://www.xclove.com/newscenter.htm

当我加了defer以后,反而提示document.getElementById找不到对象了...

附JS文件代码:
alimama_pid="mm_10653905_728529_2095357";
alimama_titlecolor="707070";
alimama_descolor ="898989";
alimama_bgcolor="FFFFFF";
alimama_bordercolor="FCECD6";
alimama_linkcolor="008000";
alimama_bottomcolor="FFFFFF";
alimama_anglesize="0";
alimama_bgpic="0";
alimama_icon="0";
alimama_sizecode="35";
alimama_width=200;
alimama_height=200;
alimama_type=2;

var scrip1 = document.createElement("script");
scrip1.src = "http://a.alimama.cn/inf.js";
var divs = document.getElementById("newscenter");
divs.style.position='absolute'; //relative
divs.appendChild(scrip1);
upload 2008-05-03
  • 打赏
  • 举报
回复
依现在的效果,广告是可以出来的,但显示的位置不对,不在定义需显示的<td></td>内.

newscenter.htm:
<table width=778 align=center border=1>
<tr><td height="200" colspan=2>111</td></tr>
<tr><td width=200>222</td>
<td><div id="newscenter"></div>这里是应该显示广告的位置</td></tr>
</table>
<script src="/callad/xclove/t.js"></script>

t.js:
alimama_pid="mm_10653905_728529_2095357";
alimama_titlecolor="707070";
alimama_descolor ="898989";
alimama_bgcolor="FFFFFF";
alimama_bordercolor="FCECD6";
alimama_linkcolor="008000";
alimama_bottomcolor="FFFFFF";
alimama_anglesize="0";
alimama_bgpic="0";
alimama_icon="0";
alimama_sizecode="35";
alimama_width=200;
alimama_height=200;
alimama_type=2;

var scrip1 = document.createElement("script");
scrip1.src = "http://a.alimama.cn/inf.js";
var divs = document.getElementById("newscenter");
divs.style.position='absolute'; //relative
divs.appendChild(scrip1);
加载更多回复(22)

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧