gpt4 book ai didi

javascript - 如何让 .getAttribute 和 .removeAttribute 匹配 [onclick* ='ga' ]

转载 作者:行者123 更新时间:2023-12-02 22:40:16 27 4
gpt4 key购买 nike

我似乎无法让我的网络扩展阻止 [onclick*='ga'] 作为属性。

我尝试过使用

window.onload = function() {

let Removed = 0
const anchorElements = document.getElementsByTagName('A')

for (element of anchorElements) {
if (!element.getAttribute('a[onclick*='ga']')) continue
element.removeAttribute('a[onclick*='ga']')
Removed += 1
chrome.extension.sendMessage(Removed)
}
}

window.onload = function() {

let Removed = 0
const anchorElements = document.getElementsByTagName('A')

for (element of anchorElements) {
if (!element.getAttribute("onclick='ga'")) continue
element.removeAttribute("onclick='ga'")
Removed += 1
chrome.extension.sendMessage(Removed)
}
}

结果应该是扩展程序删除任何 onclick 属性为“ga”的链接,然后添加 1 来删除,这将更新扩展程序徽章。

最佳答案

您的代码中有错误。这是静态内容的示例。如果内容是使用 JavaScript 生成的,则需要额外的代码。

不需要window.onload

document.querySelectorAll('a[onclick*="ga"]').forEach(item => item.removeAttribute('onclick'));

如果你想记数

const a = document.querySelectorAll('a[onclick*="ga"]');
a.forEach(item => item.removeAttribute('onclick'));
chrome.runtime.sendMessage(a.length);

在上述循环内发送异步消息 runtime.sendMessage 不是一个好主意。

关于javascript - 如何让 .getAttribute 和 .removeAttribute 匹配 [onclick* ='ga' ],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58613958/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com