<HTML> 
<HEAD> 
</HEAD> 
<BODY> 
<h2>自然就是美 </h2> <SCRIPT type=text/javascript> 
document.getElementsByTagName("H2")(0).innerHTML=" <br> <script type='text/javascript' defer>document.write('111')<\/script>" 
</SCRIPT> 
</BODY> 
</HTML> 

解决方案 »

  1.   

    貌似1楼的虽然把</script>的/转译了,但是还是不行的
      

  2.   

    用innerHTML嵌入的脚本是不会直接运行的
      

  3.   

    还有你这样的写法页面显示的效果不太好,最好把script放在头部。
    <head>
     <script type=text/javascript defer> 
    document.getElementsByTagName("H2")(0).innerHTML=" <br> <script type='text/javascript' defer>document.write('111')<\/script>" 
    </script>
    </head>
    注意的是和刚才的代码有些修改,<script type=text/javascript 后面再加个defer就ok了
      

  4.   

    <script type="text/javascript"> 
    document.getElementsByTagName("H2")(0).innerHTML=" <br> <script type='text/javascript' defer>document.write('111') </scr"+"ipt>" 
    </script> 
      

  5.   

    <script type="text/javascript"> 
    document.getElementsByTagName("H2")(0).innerHTML=" <br> <script type='text/javascript' defer>document.write('111') </scr"+"ipt>" 
    </script> 
      

  6.   

     在innerHTML嵌入脚本是可以运行的
    不过要价defer属性 
      

  7.   

    想在标签内执行直接用
    document.getElementsByTagName("H2")(0).innerHTML="111";
    或者后面的用变量表示,
    document.write的字符一般会加在页面的末尾,一楼只是脚本里面的脚本运行而已,document.write返回值并不等于111
    他的返回值会被script阻断不能传到前面的innerHtml
    还有,6楼建议把脚本放到<head>这样就没法运行了
      

  8.   

    既然script里面的是document.write('111'),为什么要这样多此一举呢?
    直接innerHTMl不就可以了吗?
      

  9.   

    我并不是想他在里面输入111,如果是111,哪用document.getElementsByTagName("H2")(0).innerHTML="111"; 就行了,
    主要是插广告的时候有用,广告一般是js的
    你们说的JS都能执行,但是他会在末端执行,下面的代码能看到他所执行的位置,<HTML> 
    <HEAD> 
    </HEAD> 
    <BODY> 
    22<br />
    22<br />
    <h2>自然就是美 </h2> 
    <br />
    22<br />
    22<br />
    </BODY> 
    </HTML> <script type="text/javascript">  
    document.getElementsByTagName("H2")(0).innerHTML="  <br>  <script type='text/javascript' defer>document.write('111')  </scr"+"ipt>"  
    </script>
      

  10.   

    我发错了,HOHO,再发一次 
    主要是插广告的时候有用,广告一般是js的 
    你们说的JS都能执行,但是他会在末端执行, 下面的代码能看到他所执行的位置, <HTML>  
    <HEAD>  
    </HEAD>  
    <BODY>  
    22 <br /> 
    22 <br /> 
    <h2>自然就是美  </h2>  
    <br /> 
    22 <br /> 
    22 <br /> 
    </BODY>  
    </HTML>  <script type="text/javascript">   
    document.getElementsByTagName("H2")(0).innerHTML="   <br>   <script type='text/javascript' defer>document.write('111')   </scr"+"ipt>"   
    </script>
      

  11.   

    如果是这样的话,那请换一种思路,用dom节点操作方法,会更加的简单在需要插入广告的地方,给节点一个ID直接通过id控制节点就可以了。你想怎么控制都行。
      

  12.   

    就拿你的例子来说:
    <HTML>   
    <HEAD>   
    </HEAD>   
    <BODY>   
    22  <br />  
    22  <br />  
    <h2 id="x01">自然就是美   </h2>
    <div id="x02"></div>
    <br />  
    22  <br />  
    22  <br />  
    </BODY>   
    </HTML>   <script type="text/javascript">    
    document.document.getElementById("x01").innerHTML="广告";
    document.document.getElementById("x02").innerHTML="<img scr='../xxx/xx.jpg' />"
    </script>你想在广告位放什么都行
    而且广告位置的大小,颜色,位置等等都是可控的
      

  13.   

    绝对是可以的,LZ放心用吧,记的结帖哦。<SCRIPT type=text/javascript> 
    document.getElementsByTagName("H2")(0).innerHTML=" <br> <script type='text/javascript' defer>document.write('111');alert('dd');<\/script>" 
    </SCRIPT> 
      

  14.   

    楼上的朋友,他的确能执行JS哦,,不过执行的结果会出现在网页的末端
    用这个代码可以测试他的执行后输出的位置哦!
    H2的位置位于第三行,但是他的结果会跑到第五行哦!<HTML>  
    <HEAD>  
    </HEAD>  
    <BODY>  
    22 <br /> 
    22 <br /> 
    <h2>自然就是美  </h2>  
    <br /> 
    22 <br /> 
    22 <br /> 
    </BODY>  
    </HTML>  <script type="text/javascript">   
    document.getElementsByTagName("H2")(0).innerHTML="   <br>   <script type='text/javascript'  defer>document.write('111')   </scr"+"ipt>"   
    </script>
      

  15.   

    嗯,,主要是把广告代码放在同一个JS文件里面,然后用dom控制哪个广告在哪个标签里面出现,不知道能不能实现,很多高人说在innerHTML里面不能执行脚本哦,,我也不知道还有什么好的方法可用了!~
      

  16.   

    呵呵,此方法行不同通的也许你测试下就明白了<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> 
      

  17.   

    呵呵,楼主和我的需求一样,我的帖到现在也没有正解...
    http://topic.csdn.net/u/20080427/22/530c1c83-fb46-4e79-b9b1-2f605e08ed77.html
      

  18.   

    呵呵,哪就不用节点啦,
    不过要是多个地方要用到JS,就每个地方都要调用一个JS了
      

  19.   

    24#的我写错了,看下这个
    <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> 
      

  20.   

    其实document.getElementsByTagName("H2")(0).innerHTML="<br>\<script  defer\>document.write('111') \<\/scr"+"ipt\>"
    是已经赋值了
      

  21.   

    <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>  
    如果是这样的话 
    那就,那就没问题
    比较一下应该明白为什么了吧
      

  22.   

    嗯,,是能正常执行,只是结果的输出却是在末端,有点晕啊,
    以下代码我的本意是让他的111输出在H2的标签内,也就是第三行吧,也就是在4行22的中间,他的执行结果出现在末端,就差哪么一点了,HOHO,<HTML>  
    <HEAD>  
    </HEAD>  
    <BODY>  
    22 <br /> 
    22 <br /> 
    <h2>自然就是美  </h2>  
    <br /> 
    22 <br /> 
    22 <br /> 
    </BODY>  
    </HTML>  <script type="text/javascript">   
    document.getElementsByTagName("H2")(0).innerHTML="   <br>   <script type='text/javascript'  defer>document.write('111')   </scr"+"ipt>"   
    </script>
      

  23.   

    嗯,,我测试了,他的结果说明H2里面已经包含了我所需要的代码,而且他也执行了
    但是,他所执行的结果,并非在H2的位置上输出哦,
    用alert能说明他执行了,但是显示不出执行的位置,
    用document.write能看到他的结果是在哪里输出哦,
      

  24.   

    倒!我不是让你看我32#的例子吗?
    你自己用我32#例子测试一下你就明白了
    <HTML>  
    <HEAD>  
    </HEAD>  
    <BODY>  
    22 <br /> 
    22 <br /> 
    <h2><script type="text/javascript">   
    document.getElementsByTagName("H2")(0).innerHTML="   <br>   <script type='text/javascript'  defer>document.write('111')   </scr"+"ipt>"   
    </script>自然就是美  </h2>  
    <br /> 
    22 <br /> 
    22 <br /> 
    </BODY>  
    </HTML>  
    你要是这样的话就可以
      

  25.   

    晕,,好像真的可行,,我试试,,HOHO
      

  26.   

    你再看下这个例子<HTML> 
    <HEAD> 
    </HEAD> 
    <BODY> 
    <h2 style="background:#FF0000">自然就是美<SCRIPT> 
    document.getElementsByTagName("H2")(0).innerHTML="<br>\<script  defer\>document.write('111') \<\/scr"+"ipt\>"
    </SCRIPT> </h2> 
    <script defer="defer">
    var a=document.getElementsByTagName("H2")(0).innerHTML
    alert(''+a+'')
    </script>
    </BODY> 
    </HTML> 
      

  27.   

    很好,非常感谢你,HOHO,可是我有点晕了,这是怎么完成的呢
      

  28.   

    41的这个方法不行,,这个对标签内部进行控制了,我想在不改写H2标签的情况下,用外部JS来改写H2标签的内容
      

  29.   

    2个组合一起,你自己看下就知道了
    <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\>"
    //document.getElementsByTagName("H2")(0).innerHTML="aaaa"
    </SCRIPT> 
    <script defer="defer">
    var a=document.getElementsByTagName("H2")(0).innerHTML
    //alert(''+a+'')
    </script> 
    <h2 style="background:#FF0000">自然就是美<SCRIPT> 
    document.getElementsByTagName("H2")(1).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")(1).innerHTML
    alert(''+a+'')
    </script>
    </BODY> 
    </HTML> 
      

  30.   

    晕其实都没达到我的要求哦
    32贴,嵌套了两个JS,但最终还是以非脚本的方式调入H2标签内,我想要把脚本调入里面运行哦!
    41贴,其实是修改H2标签了,我想在不修改标签的情况下,用外部JS修改H2标签内的内容哦
      

  31.   

    chinmo 大哥,你是不是在考我哈,,HOHO