window.onload = function setJs() {  
//script的结束标签要分开来写    
  document.getElementById("fsh").innerHTML ="<script>insertFlash('s.swf',500,500)</"+"script>";
    }
    

解决方案 »

  1.   

    你设置innerHTML包含script标签,里面的js不能运行的,直接设置函数返回的内容不就好了??
    function insertFlash(obj,h,w) {    
            var str = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0' width='" + w + "' height='" + h + "'>"
                    + "<param name='movie' value='" + obj + "' />"
                    + "<param name='quality' value='high' />"
                    + "<param name='menu' value='false'>"
                    + "<embed src='" + obj + "' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='" + w + "' height='" + h + "'></embed>"
                    + "</object>";
            //document.write(str);
    //==>
    return str;
            }    window.onload = function setJs() {  
    //script的结束标签要分开来写    
      document.getElementById("fsh").innerHTML =insertFlash('s.swf',500,500);
        }
      

  2.   

    document.getElementById("fsh").innerHTML ="<script>insertFlash('s.swf',500,500);<\/script>";转义字符
      

  3.   

    有一点是,innerhtml里的javascript代码是不能执行的。