Javascript 如果所有元素(表)的宽度与某些(200)像素相同,如何隐藏它们?
假设我看到一个有100张桌子的页面:50张桌子是100宽的,50张桌子是200宽的 200宽度的表与我无关,我想用Javascript 如果所有元素(表)的宽度与某些(200)像素相同,如何隐藏它们?,javascript,html,css,frontend,Javascript,Html,Css,Frontend,假设我看到一个有100张桌子的页面:50张桌子是100宽的,50张桌子是200宽的 200宽度的表与我无关,我想用if()语句隐藏它们 问题是,他们没有选择器,我需要根据他们的宽度选择时间。这可能吗 我试过了,但没有成功: document.querySelectorAll('table').forEach( (e)=> { if (table.width === 300) { e.style.visibility = 'hidden'; } }); 编辑:我最想要一个普
if()
语句隐藏它们
问题是,他们没有选择器,我需要根据他们的宽度选择时间。这可能吗
我试过了,但没有成功:
document.querySelectorAll('table').forEach( (e)=> {
if (table.width === 300) {
e.style.visibility = 'hidden';
}
});
编辑:我最想要一个普通的解决方案。使用表元素的offsetWidth属性,并确保dom在尝试访问它之前已准备就绪:
function removeTables() {
document.querySelectorAll('table').forEach( (e)=> {
if (e.offsetWidth >= 200) {
e.style.display = "none";
}
});
}
window.onload = function() {
removeTables()
};
试试下面的脚本。在这里,我使用jquery
each()
函数迭代页面中的所有表。希望能有帮助
$(document).ready(function(){
$('table').each(function(){
if($(this).width()==125){
$(this).hide();
}
});
});
检查此项以供参考。Hmm,即使页面明确包含表(一个表,带有tbody、td等)。也就是说,当您记录e时,控制台会说什么?这些表在iframe中吗?console.log(e);带来
引用错误:未定义e
。实际上,网页中的一些表似乎是带有框架标记的框架集的一部分。但是我确实看到了任何相关的iframe
标记(有一些标记显然与我要定位的表无关);console.log(tables)如果这是未定义的,那么我猜这些表没有附加到docuemnt对象,您可以将其转换为香草吗?我不知道jQuery。我将更新问题,我正在寻找一个普通的解决方案。顺便说一句,我知道domContentLoaded不同于$(文档)。准备好了吗,所以问题是什么可以取代它。@sangoko sry dude,我不知道香草!!