如何在隐藏指定内容的DIV时显示目标隐藏DIV(#brxe-akqmjs)
问题解决:隐藏指定DIV并显示目标DIV
实现思路
要同时完成「隐藏含指定文本的DIV」和「显示原本隐藏的目标DIV」,核心是先正确获取目标元素,再通过标记判断是否触发显示逻辑,避免重复操作或逻辑冲突。
修改后的完整代码
<script> // 获取需要显示的目标DIV const targetDiv = document.getElementById('brxe-akqmjs'); // 获取所有需要检查的"未找到事件"DIV const notFoundDivs = document.getElementsByClassName('etn-not-found-post'); // 标记是否需要显示目标DIV let needShowTarget = false; for (let x = 0; x < notFoundDivs.length; x++) { const currentDiv = notFoundDivs[x]; const divContent = currentDiv.textContent.trim(); if (divContent === 'No Event Found' || divContent === 'Error') { // 隐藏当前符合条件的DIV currentDiv.style.display = 'none'; // 只要有一个符合条件,就标记需要显示目标DIV needShowTarget = true; } } // 根据标记显示目标DIV(可根据元素默认display调整值,比如'flex'/'inline'等) if (needShowTarget) { targetDiv.style.display = 'block'; } </script>
关键说明
- 目标元素获取:用
getElementById精准获取ID为brxe-akqmjs的元素,确保操作对象正确。 - 状态标记:通过
needShowTarget变量记录是否需要显示目标DIV,避免多个符合条件的DIV重复触发显示操作。 - 显示逻辑:遍历结束后统一处理目标DIV的显示,确保逻辑清晰,不会因循环内重复操作导致代码异常。
如果目标DIV原本的默认显示方式不是block(比如是flex或inline-block),只需将targetDiv.style.display = 'block'中的值替换为对应属性即可。
内容的提问来源于stack exchange,提问作者isostu
相关产品推荐
相关产品推荐

