如果这个问题不清楚,请提前道歉;我很新。jQuery不改变CSS,即使在数组中找到元素?
我正在使用Chrome扩展程序来更改www.nytimes.com上浏览次数最多的标题的颜色。我的问题是,我无法让jQuery可靠地覆盖页面上的CSS。
我正在使用一个函数来搜索页面上的所有锚点,将这些锚点的文本与标题数组进行比较,并在文本匹配其中一个标题时修改CSS。下面是我有:
$("a").each(function() {
$this = $(this);
if ($.inArray($this.text(), titles) !== -1) {
console.log("found title");
$this.css('color', color);
}
});
的执行console.log语句是测试,这的确显示我,我此刻的我的网页上找到8场比赛。但是,只有四场比赛获得CSS颜色。四个改变的标题都在页面的“通过电子邮件发送”部分。即使标题文字相同,页面主体中的相应标题也不会更改。
我错过了什么?
因此,正如我在另一个回应中提到的,最后一行更改CSS工作正常。我正在使用一个变量作为颜色并传递一个字符串。我可以将其更改为“红色”,“#006600”或其他任何内容,但它只会改变一半的标题。 – Erik816
我注意到在主要文章中的html,可能有一个换行标签之前的文本,我没有拿起。我已经搜索,但它不会出现,你可以添加一个正则表达式到$ .inArray(如果可以的话,我不知道该怎么做)。这可能吗? – Erik816
尝试使新的替代颜色!重要 – Bhargav