javascript 获取动态加载的元素

ecfdbz9o  于 2023-04-28  发布在  Java
关注(0)|答案(1)|浏览(209)

我正在使用getElementsByTagName定位链接

var anchors = document.getElementsByTagName('a');

它适用于所有链接。但是,如果链接是动态加载的,则不起作用。
我正在用 AJAX 加载新内容(加载更多),它包含链接。我也需要把这些链接。

abithluo

abithluo1#

无论链接是在页面加载时出现的,还是稍后动态添加的,它都应该起同样的作用。
但是,您应该在添加新的<a>标记时更新变量。

let links = document.getElementsByTagName("a");
console.log("There are " + links.length + " link");

//wait 1 second
setTimeout(function(){
  //add another link
  document.body.insertAdjacentHTML('beforeend', "<a href='#4'>4</a>");
  
  //Update the variable
  links = document.getElementsByTagName("a");
  console.log("There are " + links.length + " link");
}, 1000);
<a href="#1">1</a> <a href="#2">2</a> <a href="#3">3</a>

相关问题