多个图像元素的所有jQuery中徘徊时褪色。(Multiple image elements all

2019-09-26 14:41发布

我在与具有相同ID的页面上施加褪色只是一个元素的问题。

首先,我淡出图像下降到60%,然后悬停我想它只是100%的图像。 这部分作品,但它适用于每个页面上的元素的影响。

// Fading images
$(document).ready(function(){

$('.mainArticle img').fadeTo('slow', 0.6);

$('.mainArticle img, .articleContainer').hover(function(){

    $(this).find('.mainArticle img, .articleContainer').stop(true,true).fadeTo("slow", 1.0);
},function(){
    $(this).find('.mainArticle img, .articleContainer').stop(true,true).fadeTo("slow", 0.6); 
}); 
});

我也知道这是否CSS而是试图尽可能地兼容来完成。

希望你们能帮助,

干杯,

汤姆

Answer 1:

您是find()再次荷兰国际集团相同的元素。 $(this)是悬停的元素,所以你可以用这个你悬停处理程序:

$('.mainArticle img, .articleContainer').hover(function(){
  $(this).stop(true,true).fadeTo("slow", 1.0);
},function(){
  $(this).stop(true,true).fadeTo("slow", 0.6); 
});

不过,我想我明白你正在尝试做的,并根据您的HTML(如果你可以发布您的HTML这将是一个容易得多),你可能会想改变它的东西是这样的:

$(function(){
  $('.mainArticle img').fadeTo('slow', 0.6);

  $('.articleContainer').hover(function(){
    $(this).find('.mainArticle img').stop(true,true).fadeTo("slow", 1.0);
  },function(){
    $(this).find('.mainArticle img').stop(true,true).fadeTo("slow", 0.6); 
  });
});

由于只有一个图像褪色: 的jsfiddle

随着多个图像褪色: 的jsfiddle



Answer 2:

如何只使用$(本),而不是$(本).find( 'mainArticle IMG,.articleContainer')?

你选择每一个该选择匹配的元素,但因为你已经徘徊之一,你可以只使用$(本),并有进行改变。



文章来源: Multiple image elements all fading when hovered in Jquery.