我想要做到一个效果,在我的window.onload=function({
...
}
方法中,我主动调用一个tr上的onmouseover事件,这个事件会对一个element元素进行操作,添加2个新的element元素进去我想等到这两个element创建结束再继续进行后续操作,可是,每次都是执行时element还没生成。

解决方案 »

  1.   


    那就判断新添加的哪两个元素ID如果有了,就证明添加成功了用if(document.getElementById(这里填你新添加元素的ID)){
    //执行代码
    }
      

  2.   

    将需要等element创建完成的代码放到setTimeout中setTimeout(function(){
     //创建完成后执行
    },0)
      

  3.   

    setTimeout(function(){
     //创建完成后执行
    },时间) 时间单位为毫秒
    顺便推荐下自己的网站,希望楼主不要介意,请大家有空多来看看,给小弟一些意见
    蜗蜗网 http://www.wowo258.com
      

  4.   

    onmouseover事件里 最后调你的"后续操作"
      

  5.   

    你可以在创建element结束过后在调用要执行的方法
    window.onload()=function{
     load();
    }
    function load(){
    createElem();
    createElem();
    /*其他的代码写在这里*/
    }
    function createElem(){
    ..../*创建element*/
    }
      

  6.   

    各位,element是在事件触发时创建的,所以我的script标签内部的JS没有全部执行完为止,element是不会出现的。
      

  7.   

    element元素是在onmouseover事件的handler中创建的,由于javascript在dom中的解析机制,如果不执行完当前区块Script标签的全部JS,是不会继续渲染document的,所以导致我无法取得新建的元素,在Script标签中,因为它还没有渲染出来。