javascript中具有主体但不在id上的查询选择器
我被困在选择整个身体而不是身体中特定id的元素中。 我为javascript尝试了以下方法javascript中具有主体但不在id上的查询选择器,javascript,html,Javascript,Html,我被困在选择整个身体而不是身体中特定id的元素中。 我为javascript尝试了以下方法 var boxElemb = document.querySelector("body:not('ul#id')"); boxElemb.innerHTML=boxElemb.innerHTML.replace(/BOTÕES/g, 'Puxadores'); 但它不起作用。我正在用另一个文本替换内容。请帮助我,如果任何人有解决方案您可以在所有正文中替换您的文本,然后在特
var boxElemb = document.querySelector("body:not('ul#id')");
boxElemb.innerHTML=boxElemb.innerHTML.replace(/BOTÕES/g, 'Puxadores');
但它不起作用。我正在用另一个文本替换内容。请帮助我,如果任何人有解决方案您可以在所有正文中替换您的文本,然后在特定id中将其替换回来
const body = document.querySelector("body");
const id = document.querySelector("#id");
body.innerHTML=boxElemb.innerHTML.replace(/BOTÕES/g,'Puxadores');
id.innerHTML=boxElemb.innerHTML.replace('Puxadores', /BOTÕES/g);
ul#id
内部not
不是有效语法
使用[id]
。任何介于[
和]
之间的内容都将被视为属性。您还可以使用属性值对其进行过滤,如[id='myId']
document.querySelector("body:not('ul[id]')");
如果你说如果你改变了文本,标签就不起作用了,那么你就完全错过了其他东西。但是,以下内容应符合您的要求:除具有特定id的ul外,任何地方都应更改
var body = document.querySelector('body'),
ulIdText = document.querySelector('ul#id').innerHtml,
bodyText = body.innerHTML
.replace(ulIdText,'_^_preallocatedtext_^_')
.replace(/BOTÕES/g,'Puxadores')
.replace('_^_preallocatedtext_^_',ulIdText);
body.innerHTML = bodyText;
您可以在这里删除不必要的变量,但我建议保持这种方式,以便以后再次访问时不言自明
与其他两个答案相比,这里的差异
body:not
不排除not
部分,因为body
的标记/属性中不包含排除项。您需要使用document.queryselectoral
,但这需要一个巨大的循环您可以选择所有
主体
,然后删除不必要的ul
。像这样:
var body = document.querySelector("body");
var ul = document.getElementById("your-id");
body.removeChild(ul);
如果您的
ul
是主体
元素的直接子元素,则需要对其进行调整。是否需要此选择器来更改ul\id
的内容?或者你想在整个网站(不包括ul#id?@brandt.codes)中将“BOTÕES”改为“Puxadores”。是的,你解释正确了,我想在整个正文(不包括选项卡“#id”部分)上使用“Puxadores”。如果选择符,你真的希望选择正文标签还是其他?发布html的摘录,突出显示您希望选择的内容和不希望选择的内容可能会更清楚。我的意思是在DOM的所有主体元素(id元素除外)上应用元素。请你澄清一下。你可以在正文中替换你的文本,然后在特定的id中替换它back不,我不想这样做,因为替换了文本,所以制表符不起作用,所以我只想留下该部分,并将文本更改应用到其他部分。如果提供id,则将为no???@HarshitSethi Yes,不#
当它位于的内部时:不(…)
我不确定上面的查询是否会获取任何内容,因为这意味着您正在尝试选择body
,它不是带有id
属性的ul
。但它是一个有效的查询这会导致以下错误(索引):4877未捕获的DomeException:未能对“文档”执行“querySelector”:“body:not('ul[tab1527316568708]”)不是有效的选择器。它根本不起作用也通过[id='myid'](索引):4877未捕获的DomeException:未能对“文档”执行“querySelector”:“body:not”(ul[id='tab1527316568708'])不是有效的选择器。由于翻译工作时重新提交内部html,因此该选项卡不起作用…@HarshitSethi好的。如果其他解决方案不起作用,请检查上述内容。