jQuery的点击功能addclass

时间:2018-11-05 02:34:04

标签: jquery click

我遇到了一个奇怪的问题,即我的大部分“规则”都在click函数中起作用,但其中一个不会起作用

$(".fadeOut input").click(function() {
  $(".nooverlay").addClass("overlayon");
  $(".searchBar").addClass("fadeIn");
  $(".searchBar").removeClass("fadeOut")
});

addClass(“ overlayon”)不起作用?!?!?
fadeIn作品
fadeOut有效

整个js可以在这里看到:
quickstart

我正在使用yui-compressor进行压缩,然后创建一个大捆绑包(bundle.js)

控制台没有错误,如果我将此功能粘贴到控制台中,它将运行正常。

实时演示:https://github.com/TerminalAddict/ta.com-website/blob/master/assets/js/ta.js

1 个答案:

答案 0 :(得分:0)

作为输入框,您要定位的是一个ID,而试图添加类的Div元素也有一个ID。 ID是唯一的,我认为您可以在下面的代码中使用。我也尝试在控制台窗口上执行,并且似乎可以正常工作。

$("#query").click(function(e){
  event.preventDefault();

  if($('#query').parents('.fadeOut').length>0){
      $('#overlay').addClass('overlayon');
      $('.searchBar').addClass('fadeIn');
      $('.searchBar').removeClass('fadeOut');
  }
});

因为我们只有在.fadeout类的情况下才会显示黑色背景,所以我在上面的jquery代码中添加了以下代码,以检查Query Textbox的父级是否具有该类。似乎工作正常。

 if($('#query').parents('.fadeOut').length>0){