我正在处理 Page Redder 示例扩展,但我无法弄清楚为什么我的 JS 无法正常工作。单击扩展时,原始扩展会将背景颜色更改为红色。我正在尝试将其 CSS 选择器找到的某些单词更改为红色,在我的例子中,选择器是“var.d”,这里是 JS:(底部注释的 JS 是原始的代码)
// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Called when the user clicks on the browser action.
chrome.browserAction.onClicked.addListener(function(tab) {
// No tabs or host permissions needed!
console.log('Turning ' + tab.url + ' red!');
chrome.tabs.executeScript({
code: 'document.querySelectorAll("var.d");'
for (var i = 0; i < xx.length; i++) {
xx[i].style.color="red";
}
});
});
// 'document.body.style.backgroundColor="red";
最佳答案
您的代码将无法运行,因为 for 循环未包含在“代码”属性中并且未声明 xx 变量。
试试下面的代码。只需确保“var.d”选择器确实存在,否则您将得不到任何结果。
chrome.browserAction.onClicked.addListener(function(tab) {
// No tabs or host permissions needed!
console.log('Turning ' + tab.url + ' red!');
chrome.tabs.executeScript({
code: 'var xx = document.querySelectorAll("var.d"); for (var i = 0; i < xx.length; i++) {xx[i].style.color="red";}'});
});
关于javascript - 试图弄乱示例扩展,但我的 JS 似乎不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34326585/