Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 淡出未单击的图像_Javascript_Jquery_Html - Fatal编程技术网

Javascript 淡出未单击的图像

Javascript 淡出未单击的图像,javascript,jquery,html,Javascript,Jquery,Html,我有一个图像库。我试图实现的是非常简单的——用户单击的任何图像都将保留在页面上,而其他图像将淡出。我试图通过向单击的图像添加一个类来实现这一点,然后通过它没有类这一事实来定位未单击的图像。然而,我似乎没有得到任何回应,因为当我点击图片时,什么都没有发生 HTML: 您可以使用.not从选择中排除元素。注意,鉴于要求,不清楚已褪色的元素如何恢复可见性 $(".img-responsive").on("click", function() { $(this).addClass("active")

我有一个图像库。我试图实现的是非常简单的——用户单击的任何图像都将保留在页面上,而其他图像将淡出。我试图通过向单击的图像添加一个类来实现这一点,然后通过它没有类这一事实来定位未单击的图像。然而,我似乎没有得到任何回应,因为当我点击图片时,什么都没有发生

HTML:

您可以使用.not从选择中排除元素。注意,鉴于要求,不清楚已褪色的元素如何恢复可见性

$(".img-responsive").on("click", function() {
  $(this).addClass("active");
  $(".img-responsive").not(this).removeClass("active").fadeOut("slow")
})
您可以使用.not从选择中排除元素。注意,鉴于要求,不清楚已褪色的元素如何恢复可见性

$(".img-responsive").on("click", function() {
  $(this).addClass("active");
  $(".img-responsive").not(this).removeClass("active").fadeOut("slow")
})
首先将一个活动类添加到单击的图像中,然后读取所有图像,并检查每个图像是否不包含该活动类以将其淡出: $img.clickfunction{ $this.addClassactive; $img.eachfunction{ if!$this.hasClassactive{$this.fadeOutslow;} } }; img{ 宽度:32px; 高度:32px } 首先将一个活动类添加到单击的图像中,然后读取所有图像,并检查每个图像是否不包含该活动类以将其淡出: $img.clickfunction{ $this.addClassactive; $img.eachfunction{ if!$this.hasClassactive{$this.fadeOutslow;} } }; img{ 宽度:32px; 高度:32px }
首先,使用适当的jquery函数添加类。然后,我建议使用jquery中的选择器。Jquery在类似数组的元素上执行其函数。使用此代码,它将淡出所有没有活动类的img元素

$("img").click(function(){
  $(this).addClass("active");
  $("img:not(.active)").fadeOut("slow");
});
或者,如果不需要活动类,则可以使用简单的解决方案

$("img").click(function(){
  $("img").not(this).fadeOut("slow");
});

首先,使用适当的jquery函数添加类。然后,我建议使用jquery中的选择器。Jquery在类似数组的元素上执行其函数。使用此代码,它将淡出所有没有活动类的img元素

$("img").click(function(){
  $(this).addClass("active");
  $("img:not(.active)").fadeOut("slow");
});
或者,如果不需要活动类,则可以使用简单的解决方案

$("img").click(function(){
  $("img").not(this).fadeOut("slow");
});

您不需要添加或删除任何类。您只需淡出所有不是单击图像的图像:

$img.clickfunction{ $img.notthis.fadeOutslow; };
您不需要添加或删除任何类。您只需淡出所有不是单击图像的图像:

$img.clickfunction{ $img.notthis.fadeOutslow; };
显示的javascript中存在解析错误。请确保这不是复制/粘贴错误。显示的javascript中存在解析错误。请确保这不是复制/粘贴错误。非常感谢您的帮助!非常感谢:非常感谢您的帮助!非常感谢:完美!谢谢你的帮助,来宾271314完美!感谢您的帮助,Guest271314这是最快捷、最简单的解决方案。先生,非常感谢您的投入!这是最快、最简单的解决方案。先生,非常感谢您的投入!