2016-06-08 69 views
0

我设计了一个chrome扩展来设置页面上的文本颜色,但它只是可以完成一些内容。当我拉下页面时,它会加载新文本。我希望这个新文本的颜色可以像之前的文本一样设置。我如何设置代码?在mainfest.json中,我尝试设置run_at,但它不起作用。 第二个问题是我设置了一些文字使用style.color,但是在我无法设置文字的颜色?我如何设置这些?非常感谢!当我拉下页面时,如何在页面加载新文本的情况下设置文本的颜色?

+0

改变颜色vía注入CSS,如果可能的话,或使用[MutationObserver](https://developer.mozilla.org/en/docs/Web/API/MutationObserver) –

+0

@IvánNokonoko即使我可以设置颜色该页面一旦向下滚动页面,就会在新内容之前刷新新内容,例如新闻列表,每次向下滚动页面时,都会显示新的内容。也许我应该在判断刷新的时刻比我使用函数来重新设置当前页面的颜色。但是我不知道如何判断? – yovino

+0

出现的新内容有我以前设置页面颜色的原始颜色。 – yovino

回答

0

一种可能的选择是通过programmatic injection

,如文档中提到:

将代码插入网页时,您的JavaScript或CSS代码不应该被注入的模式匹配每一个单页编程是非常有用的。

插入代码到一个页面时,请注意以下几点:

  • 您的扩展必须为页面跨域权限。
  • 它也必须能够使用chrome.tabs模块。

    您可以使用清单文件的权限字段获得两种权限。

  • 设置好权限后,可以通过调用tabs.executeScript将JavaScript注入页面。
  • 要注入CSS,请使用tabs.insertCSS

本文的示例可以在文档中找到。除此之外,这个类似的SO后 - Chrome Extension to change text style of specific website也可能有所帮助。

+0

即使我可以在页面上设置颜色,一旦向下滚动页面,它会在新内容之前刷新新内容,就像新闻列表一样,每次向下滚动页面时,都会显示新的内容。也许我应该在判断刷新的时刻比我使用函数来重新设置当前页面的颜色。但是我不知道如何判断? – yovino

相关问题