jQuery传递CSS var

rhs*_*gic -1 css jquery

我有以下设置来更改某个类中的链接颜色.由于某种原因,它无法正常工作.我确实需要保持这种结构,因为我正在做的事情.默认情况下,链接的颜色是白色的,因为CSS正在工作.只是jQuery更改链接不起作用.

var link_colour = "#CCC";

function linkcolor() {
$("[class='navLink']").css("color",link_colour);
}
window.onload = linkcolor;

<ul>
<li><a class="navLink" href="#"><img src="foo1.png" />xyz</a></li>
<li><a class="navLink" href="#"><img src="foo2.png" />abc</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

Ale*_*yne 5

如果你正在使用jQuery你永远不想使用window.onload = fn.使用$(document).ready(fn)$(fn)简称.

$(linkcolor);
Run Code Online (Sandbox Code Playgroud)

我猜这个代码在window.onload事件触发后运行,所以你的事件处理程序永远不会执行. jQuery如果事件已经发生,将立即触发该函数来处理这种情况,确保代码被执行.

看到它在这里工作


$('.navLink')的更好的其他答案也是正确的.但这只是你所拥有的选择器的简写,应该可以正常工作.你应该改变它,但那不是问题.