2012-04-03 97 views
4

Chrome如何处理此情况。Chrome扩展程序:作用于同一元素的多个扩展程序

假设我安装了两个扩展。一个将页面变成蓝色的扩展程序,另一个将页面变为红色的扩展程序。哪个扩展优先?

+1

你可以试试它,你知道的。 – 2012-04-03 07:39:03

+1

伟大的问题! – Ferdau 2012-04-03 07:41:51

+0

@Amaan耶我知道。但我认为这对于搜索人员很有用。我会在几分钟内尝试。但随时回答,如果你在我面前:) :) – Chamilyan 2012-04-03 08:33:21

回答

8

最终的行为取决于以下因素:

  • Specifity of the CSS selectors。例如:html bodybody更具体。

  • 速记属性:background-color:red;总是覆盖background:cyan;

  • 0123'标志的存在:!important声明只能被另一个!important声明覆盖。

  • 执行顺序:这是安装了最近扩展名被执行最后
    这意味着,如果之前的决策规则未定,那么最终(重新)加载的扩展将“赢”。

+2

PS。执行顺序也受到['run_at'](http://code.google.com/chrome/extensions/content_scripts.html#registration)清单设置的影响。 – 2012-04-03 20:01:18

2

两个扩展都会执行。首先执行的将会将页面转换为一种颜色,其次是其他颜色。最后的颜色盛行。

执行的顺序取决于很多事情,例如,如果两个扩展正在侦听同一个事件,顺序取决于哪个添加了其侦听器。