0

我想在下面代码的链接中设置“val”的颜色。

var link = $('<a href="#" class="album">' + val + '</a><br><br>');//this is the link
link.style.color="red";//this is how iam trying to set the color of "val"

那么如何做到这一点。

4

5 回答 5

1

你可以这样做:

link.css({ color: 'red' });

但正确和好的方法是:

$(".parent_element").prepend('<a href="#" class="album">'+val+'</a><br><br>');
$(".parent_element > a:first").css({ color: 'red' });
于 2013-09-04T10:59:03.807 回答
0

尝试这个:

$(link[0]).css({ color: 'red'});

这样做的原因是它link不是一个<a>元素 - 它是一组元素:<a><br>另一个<br>

另一种方法是:

link.css({ color: 'red' });

但这会将这个 CSS 设置为不仅<a>,而且都设置<br>为 (虽然没什么大不了的)。

于 2013-09-04T11:00:18.627 回答
0

如果您使用的是 jQuery(看起来确实如此),请继续执行此操作,

jQuery

link.css("color","red");

否则, JavaScript

link[0].style.color = "red";

你所做的不起作用,因为链接是一个数组。在对其应用样式之前,您必须先选择第一个元素link[0],然后对其进行操作。

于 2013-09-04T11:00:54.847 回答
0

您可以使用link.style.color="red"iflink是一个 HTMLElementNode,但它不是。它可能是一个 jQuery 对象,但如果您使用的是旧版本的库,那么它将返回undefined.

首先,您需要修复您的 jQuery 调用。您不能在顶层创建多个元素。(如果您使用的是足够新的 jQuery 版本,则可以跳过这一点)。

由于没有充分的理由使用双<br>精度(它大喊“使用 CSS 来添加边距”),我将它们取出:

var link = $('<a href="#" class="album">' + val + '</a>');

现在你有了一个 jQuery 对象,所以你可以使用 jQuery 方法来设置 CSS:

link.css("color", "red");

或从 jQuery 对象获取 HTMLElementNode 并使用它:

link.get(0).style.color="red";
于 2013-09-04T11:00:55.723 回答
0
link.css("color", "red")

但是,我认为为此创建一个 css 类并在那里设置颜色会更好。在 Javascript/jQuery 中,我会在需要时将类添加到标签中。它更优雅。

于 2013-09-04T11:23:37.820 回答