有一個包含以下 div 的網站:
<div class="x" style="user-select: none; filter: blur(4px);">
在這個 div 下還有很多其他的 div。我想知道是否有可能只用javascript洗掉這個DIV。所以只有那個被洗掉,下面的所有 div 都保留下來。
我想擺脫這個 DIV 因為這個 div 模糊了網站文本的一部分。僅更改模糊(4px)將無法正常作業,該網站具有某種保護措施,可以將這部分重繪 回原始狀態。我在 javascript 中尋找可能性的原因是因為我想在瀏覽器中自動執行此操作。(只需在開發人員模式下手動洗掉 DIV 即可)
到目前為止,我得到了以下資訊:
var div = document.getElementsByClassName('page-content');
div.remove(); //(but this does not work)
uj5u.com熱心網友回復:
getElementsByClassName()回傳一個集合。只有單個物件有remove()方法。您必須申請以下其中一項:
- 使用方括號指定要獲取的物件的索引:
div[0].remove()
- 使用
item()傳遞索引的方法:
div.item(0).remove()
兩種方式是等價的。
作為替代方案,您可以呼叫querySelector()方法:
const div = document.querySelector('.page-content')
它回傳單個物件(根據傳遞的 CSS 選擇器),因此您可以使用:
div.remove()
編輯:
要僅洗掉覆寫div,您可以使用replaceWith()方法并將該 div 的子節點作為引數傳遞:
div.replaceWith(...div.childNodes)
如果您只想保留元素節點,請使用children屬性:
div.replaceWith(...div.children)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/475627.html
標籤:javascript html css 网络 网络浏览器控制
