如何使用jQuery更改p标签文本颜色css属性?我不想改变所有的p标签,只是一个特定的标签....
如果没有为每个p标签添加id,是否可以这样做?
<div class = "custimage"><img src = "img/notch.jpg" alt = "notch"/><p>Notch</p></div>
<div class = "custimage"><img src = "img/peak.jpg" alt = "peak"/><p>Peak</p></div>
<div class = "custimage"><img src = "img/shawl.jpg" alt = "shawl"/><p>Shawl</p></div>
编辑:
我希望它能够在用户点击特定的custimage时更改p标签文本颜色。我试过了:
$('.custimage').click(function(e) {
var cssObj = {
'background-color' : '#fff'
}
$(this).css(cssObj);
$('this p').css({color: '#000'});
});
这不起作用。使用$('.custimage p').css({color: '#000'});
更改所有图像中文本的颜色......
答案 0 :(得分:6)
你应该能够像这样更改点击的.custimage
div中的p标签的颜色:
$('.custimage').click(function(e) {
$(this).find('p').css({color: '#000'});
});
.find()
函数遍历DOM树以查找与给定选择器匹配的任何标记。您可以在http://api.jquery.com/find/
.find()
功能的更多信息
答案 1 :(得分:1)
$(“。custImage p”)会让你在该类的div中获得所有p标签。然后你可以做你想做的事。如果你给我更多信息,我会给你一个更好的选择。
答案 2 :(得分:0)
使用文本内容作为选择器更改特定的“p” -
$("p:contains('Notch')").css("color","red");
使用单击的.custimage
类来获取div中的那个 -
$('.custimage').click(function(e) {$(this).find('p').css("color","red")});
答案 3 :(得分:0)
$('p').each(function(index) {
//Lets say you want to target P number 2
if(index = "2") {
$(this).css('color','red');
}
});
或者你可以定位图片或alt标签..这对你有用吗?