从相同 class 的所有元素中删除
Delete from all elements of the same class
我正在寻找一种方法来搜索相同 class 的所有元素并删除任何
,因为这些元素会在我的页面布局中造成不必要的空白。
最初我使用这个代码:
var el = document.querySelector('.offer');
el.innerHTML = el.innerHTML.replace(' ', '');
但这只能找到 offer
的 class 的第一个节点,所以用处不大。
我正在回答我自己的问题,因为我必须从这里和其他网站上的许多帖子中拼凑出来,我希望它能帮助其他人。
首先,我需要使用 .queryselectorAll
而不是 .querySelector
来 return 所有具有 offer
class.
的元素
但是下一行将不起作用,因为 .queryselectorAll
return 是一串节点,而不仅仅是它遇到的第一个节点。
el.innerHTML = el.innerHTML.replace(' ', '');
解决方案是遍历每个元素并替换
的每个实例
var el = document.querySelectorAll('.offer');
for(var i = 0; i < el.length; i++){
el[i].innerHTML = el[i].innerHTML.replace(' ', '');
}
我正在寻找一种方法来搜索相同 class 的所有元素并删除任何
,因为这些元素会在我的页面布局中造成不必要的空白。
最初我使用这个代码:
var el = document.querySelector('.offer');
el.innerHTML = el.innerHTML.replace(' ', '');
但这只能找到 offer
的 class 的第一个节点,所以用处不大。
我正在回答我自己的问题,因为我必须从这里和其他网站上的许多帖子中拼凑出来,我希望它能帮助其他人。
首先,我需要使用 .queryselectorAll
而不是 .querySelector
来 return 所有具有 offer
class.
但是下一行将不起作用,因为 .queryselectorAll
return 是一串节点,而不仅仅是它遇到的第一个节点。
el.innerHTML = el.innerHTML.replace(' ', '');
解决方案是遍历每个元素并替换
var el = document.querySelectorAll('.offer');
for(var i = 0; i < el.length; i++){
el[i].innerHTML = el[i].innerHTML.replace(' ', '');
}