我有一个基本上由此构成的扩展(使用jQuery):
$('a[href*="dailymail"]').css({'background':'#333'})
它在常规链接上运行得很好。
但它不适用于Google搜索结果,因为该链接的href
部分实际上是Google重定向网址,实际网址属于data-href
属性。
我的问题是
$('a[data-href*="dailymail"]').css({'background':'#333'})
不起作用。我是否在匹配属性/值或Google的搜索结果页面时遇到问题,或者是什么?
任何想法的TIA。答案 0 :(得分:1)
您的问题可能就是代码执行时的问题。
Google页面动态加载其搜索结果(例如,用于即时用途)。如果您的代码在内容脚本中执行,那只能保证它在解析静态DOM后执行。
$(selector).css()
通过向代码运行时匹配的元素添加内联样式来运行。因此,结果(稍后添加)不受影响。
最明显的解决方案是简单地注入CSS,而不是JS代码:
"content_scripts" : [{
"matches": ["*://*/*"],
"css": ["dailymail.css"]
}]
a[href*="dailymail"], a[data-href*="dailymail"] {
background: #333;
}
这应该具体到足以应用;如果没有,请尝试添加!important
。
如果要以编程方式控制此操作,请考虑在页面中添加<style>
元素。