我想在下面代码的链接中设置“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"
那么如何做到这一点。
我想在下面代码的链接中设置“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"
那么如何做到这一点。
你可以这样做:
link.css({ color: 'red' });
但正确和好的方法是:
$(".parent_element").prepend('<a href="#" class="album">'+val+'</a><br><br>');
$(".parent_element > a:first").css({ color: 'red' });
尝试这个:
$(link[0]).css({ color: 'red'});
这样做的原因是它link
不是一个<a>
元素 - 它是一组元素:<a>
和<br>
另一个<br>
。
另一种方法是:
link.css({ color: 'red' });
但这会将这个 CSS 设置为不仅<a>
,而且都设置<br>
为 (虽然没什么大不了的)。
如果您使用的是 jQuery(看起来确实如此),请继续执行此操作,
jQuery
link.css("color","red");
否则, JavaScript
link[0].style.color = "red";
你所做的不起作用,因为链接是一个数组。在对其应用样式之前,您必须先选择第一个元素link[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";
link.css("color", "red")
但是,我认为为此创建一个 css 类并在那里设置颜色会更好。在 Javascript/jQuery 中,我会在需要时将类添加到标签中。它更优雅。