本帖最后由 spcmusic 于 2010-06-25 16:36:08 编辑

解决方案 »

  1.   

    function show()
    {    
        var ob = document.getElementById('ob');    for(i=0;i<10;i++)
        {
            div = document.createElement('div');
        
        var a1 = document.createElement('img');
        a1.src = "a1.gif";
        var b1 = document.createElement('img');
        b1.src = "b1.gif";        div.appendChild(a1);
            div.appendChild(b1);        ob.appendChild(div);
        }
    }
      

  2.   

    div.appendChild(a1);这代码,要么是把a1移到当前的div里,要不就是不执行。
      

  3.   

    appendChild(node)有两个意思
    一个是当页面上不存在节点(node)时,增加一个节点
    第二个是当页面上已经存在节点(node)时,对节点的移动你的代码a1,b1的引用没变,只是做了循环。所以每次增加都是在对原有节点的移动。所以永远只有一个。只是移动到了最后创建的div里而已
      

  4.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>addImg.html</title>

        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="this is my page">
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        
        <script type="text/javascript">
         window.onload = function()
    {
        show();
    };function show()
    {    
        /*var a1 = document.createElement('img');
        a1.src = "a1.gif";
        var b1 = document.createElement('img');
        b1.src = "b1.gif";*/    var ob = document.getElementById('ob');    for(i=0;i<10;i++)
        {
            div = document.createElement('div');
            var a1 = document.createElement('img');//这里的对象要循环创建,你上面的只创建了一个,不管怎么循环添加的还是一个对象。
    a1.src = "a1.gif";
    var b1 = document.createElement('img');
    b1.src = "b1.gif";
            div.appendChild(a1);
            div.appendChild(b1);        ob.appendChild(div);
        }
    }
        
        </script>  </head>
      
      <body>
        <p id="ob"></p>
      </body>
    </html>