如何仅使用$(this)更改选定元素上的CSS

臭豆腐

我正在尝试使其在用户.mouseover().featured_products .featured_products和.button将CSS效果应用于所选容器的位置。我遇到的问题是它更改了两个.feature_products容器的.css。我希望它仅更改.mouseover()。我尝试使用$(this),但我无法正确理解。

$(".featured_products").mouseover(function(){
    $(".fp_button").css("background-color", "#00addc");
    $(".fp_button").css("color", "#FFFFFF"); 
    $(this).addClass("fp_hover");
  });
  $(".featured_products").mouseleave(function(){
    $(".fp_button").css("background-color", "white");
    $(".fp_button").css("color", "#000000")
    $(".featured_products").removeClass("fp_hover");
  });

这是我的演示

桑兹

您可以在选择器中使用第二个参数来表示父对象,例如:

$(".fp_button", this).css("background-color", "#00addc");

在这里查看:http : //jsfiddle.net/4417zugn/31/


您还可以执行以下操作:

$(this).find(".fp_button")...

等。有很多方法。

我建议的一件事是更改类名称,而不是修改单个CSS规则,例如:http : //jsfiddle.net/4417zugn/33/


最后一件事,仅使用CSS即可实现,例如:http : //jsfiddle.net/4417zugn/35/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章