短手在javascript中删除了许多getElementById

时间:2014-06-01 04:19:40

标签: javascript

如何缩短此代码?

document.getElementById('bl7').remove();
document.getElementById('bl8').remove();
document.getElementById('bl9').remove();
document.getElementById('bl10').remove();
document.getElementById('bl11').remove();
document.getElementById('bl12').remove();
document.getElementById('bl13').remove();
document.getElementById('bl14').remove();
document.getElementById('bl15').remove();
document.getElementById('bl16').remove();
document.getElementById('bl17').remove();
document.getElementById('bl18').remove();
document.getElementById('bl19').remove();

我不能使用jquery谢谢你。

1 个答案:

答案 0 :(得分:1)

DOM元素上的

.remove()是一种非常新的实验方法(例如,在任何版本的IE中都不支持)。使用.removeChild()可能会更好。

如果你想删除那么多元素,我建议你使用一个表并遍历表格,或者如果它们是真正的顺序ID值,你可以在一个循环中制作id。

var item;
for (var i = 7; i <= 19; i++) {
    item = document.getElementById("bl" + i);
    item.parentNode.removeChild(item);
}

如果您需要经常这样做,那么可能更容易在您想要同时操作的所有对象上放置一个类名,并在基于类名的查询中获取所有这些类似{{{ 1}}。

或者,您可以创建任意数量的短函数来操作一组ID:

document.querySelectorAll()