如何在for循环中使用.each of jquery来一次突出显示一个标签

时间:2013-12-17 14:53:00

标签: javascript jquery html css flot

$(this).click(function){
$('.text').each(function(){
$(this).css('color''#C4BD97')
});
});

这是我的代码,使用jquery突出显示flot图中系列的标签,点击图表上的相应图。我面临的问题是我点击了flot图上的点,但只突出了yaxis中的最后一个标签。我想通过单击相应图表上的点来突出显示标签。但是此代码仅突出显示最后一个标签,无论点击哪个图表。即使在不同系列上点击了绘图,也会突出显示相同的最后一个标签。

This function has a for loop where it takes each series to add the label to each  series. 
my function
function addLabels(axis,ticks) {
/*some statements
for(i=1;i<axis.length;++i)
{
  }
*/

addLabels(axes.yaxis,function(tick,axes){
return '<div class="text" style=position: absolute ; some calculation +ticklabel /div>'

3 个答案:

答案 0 :(得分:1)

我对您的代码进行了3次修改。

首先,您的代码中有一个额外的),并且您的语句缺少分号,而您的css()缺少逗号。

接下来,我删除了.each(),因为它隐含在选择器中。

最后,我假设你只想要点击元素中的.text元素,并告诉它只改变从属于它的.text的颜色。

$(this).click(function(){
   $(this).find('.text').css('color', '#C4BD97');
});

如果我支持第三次更改的假设不正确,那么只需使用:

$(this).click(function(){
   $('.text').css('color', '#C4BD97');
});

答案 1 :(得分:0)

正确使用JQuery:

$(this).click(function(){
$('.text').each(function(){
$(this).css('color':'#C4BD97');
});
});

答案 2 :(得分:0)

做$(this).click(功能)无法正常工作!

只需.click(function (){

顺便说一下,$(this).css('color''#C4BD97')不能没有“,”! - &GT; $(this).css('color','#C4BD97')