js通过类名选取dom,HTMLCollection的length为0且操作不了

犯了一个低级的错误,想改一个老旧项目的dom。

 

结果用JQ和原生JS获取后,原生JS获取的HTMLCollection在console能看到length也有值,但就是操作不了

 

 

 

困扰了我大半天,最后查到是这么个原因:

  js执行过快,dom节点还没生成就已经执行完了,所以选不到dom(JQ的显示是正确的)

 

解决方法:

  1、延时器。这个是有bug的,因为不知道页面何时渲染完

  2、defer属性。很遗憾js的引入也是动态的不是一个写死的标签用不了defer

  

posted @ 2020-03-20 16:12  vk隐  阅读(2008)  评论(0编辑  收藏  举报