基于正文文本使用Javascript隐藏元素类
我有一个动态生成的页面,根据用户是否登录来更改内容 因此,基于网页正文中的文本,我想隐藏一些元素 HTML示例:基于正文文本使用Javascript隐藏元素类,javascript,jquery,html,hide,display,Javascript,Jquery,Html,Hide,Display,我有一个动态生成的页面,根据用户是否登录来更改内容 因此,基于网页正文中的文本,我想隐藏一些元素 HTML示例: <div class="button-wrapper"> <a class="button-1" href="/upload" id="button-pop"> <span class="button-text">Upload New Product</span>
<div class="button-wrapper">
<a class="button-1" href="/upload" id="button-pop">
<span class="button-text">Upload New Product</span>
</a>
</div>
<div class="wv-signupnotice">
<h3>Sign up to start learning</h3>
<p>Help children in rural communities</p>
</div>
非常感谢您的帮助
让divs=document.getElementsByClassName('button-wrapper')
此函数将返回包含按钮包装类的元素集合。遵循代码,如果文档上存在任何其他具有wv signupnotice的div,则该代码将隐藏此div。希望能有帮助
let divs=document.getElementsByClassName('button-wrapper');
$(文档).ready(函数(){
if($('div').hasClass(“wv注册通知”))
divs[0]。style.display=“无”;
});代码>
注册开始学习
帮助农村社区的儿童
您在案例中检索的innerHTML永远不会等于“农村社区”,因为innerHTML实际上类似于“a类”=“…农村社区…span>。/a>”
你认为你应该选择indexOf而不是:
let divs = document.getElementsByClassName('button-wrapper');
for (let x = 0; x < divs.length; x++) {
let div = divs[x];
let content = div.innerHTML.trim();
if (content.indexOf('rural communities') > -1) {
div.style.display = 'none';
}
}
let divs=document.getElementsByClassName('button-wrapper');
for(设x=0;x-1){
div.style.display='none';
}
}
你的代码看起来应该可以正常工作。你有没有遇到任何错误?没有,我看不到任何错误,类按钮包装器
就是无法隐藏!它太顽固了!如果文本是“农村社区”,我想隐藏类按钮包装器“可以在网页上找到,或者类似地,如果存在类别wv signupnotice。
如果这确实是您想要的,您不应该在循环之外进行检查,因为它不依赖于任何单个。按钮包装器
div?或者你想要某种程度上依赖于检查。按钮包装
内容的逻辑吗?是的,我实际上不关心里面有什么。按钮包装
,而我只想。如果网页上的任何地方都有文本“农村社区”,则按钮包装
是隐藏的。不过这是动态生成的。在任何时候,页面上都会出现不止一个“农村社区”的情况吗?您可以像上面那样将js代码放在ready函数中。您正在使用jquery吗?如果你看到了代码,它就可以正常工作,除非你的页面上有其他东西。进行了编辑。无论如何,感谢您的慷慨帮助!非常感谢!
let divs = document.getElementsByClassName('button-wrapper');
for (let x = 0; x < divs.length; x++) {
let div = divs[x];
let content = div.innerHTML.trim();
if (content.indexOf('rural communities') > -1) {
div.style.display = 'none';
}
}