您的位置:首页 > Web前端 > JavaScript

js中使用getElementsByTagName,getElementsById等获取html元素失败,没有获取到,很有可能是页面还没有渲染完就去获取了

2018-03-15 11:11 726 查看
在使用getElementsById获取html,出现获取到时空,很大的可能是页面还没有渲染完毕.  如下几种情况会发生这种获取不到的情况:
    直接写在<head>标签中,因为这是最开始执行,html还没有渲染  所以如果尝试  var e = getElementsById("p");
那么返回的e是空.
    一个重点就是要在你要获取的那个html元素渲染完毕后才能去使用 getElementsById;  2种方法:
方法1:
   如下例子:(要获取p元素,那么代码写在<p>后面就可以
   <p>你好,测试一下啊</p>
   <script>  var e = getElementsById("p");//在这里可以成功获取</script>
 方法2:
   <head>

       function test(){
           var e = getElementById("p");
           console.log(e);//可以成功打印出来
      }  </head>
    <body onload="test()">
       <p>测试测试</p>
    </body>

同理getElementsByTagName和getElementsClassName和getElementsByName几个的用法也遵循以上的规则.
   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐