jquery - jquery点击函数addclass
问题描述
我有一个奇怪的问题,我的“大部分”规则在点击函数中起作用,但一个不会
$(".fadeOut input").click(function() {
$(".nooverlay").addClass("overlayon");
$(".searchBar").addClass("fadeIn");
$(".searchBar").removeClass("fadeOut")
});
addClass("overlayon") 不起作用?!?!?
fadeIn 工作
fadeOut 工作
整个js可以在这里看到:
https ://github.com/TerminalAddict/ta.com-website/blob/master/assets/js/ta.js
我正在使用 yui-compressor 进行压缩,然后创建一个大包(bundle.js)
控制台中没有错误,如果我将此功能粘贴到控制台中,它可以正常工作。
解决方案
作为输入框,您的目标是有一个 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 代码中添加了以下代码,以检查查询文本框的父级是否具有该类。它似乎工作正常。
if($('#query').parents('.fadeOut').length>0){
推荐阅读
- iis - IIS 共享配置 > HTTP 错误 500.21
- cassandra - 如何计算 cassandra DB 中的“Concurrent_reads”参数
- python-3.x - 无法解码 json 数据
- facebook - 在 iframe 中跟踪 facebook 像素转换
- c++ - RE2 不匹配非 ASCII 字符
- c++ - antlr4中对Any的要求
- cucumber - Cucumber Puppeteer:尝试使用参数调用 step 函数时出错
- python - Django重命名模型字段而没有数据库上的ALTER TABLE
- c# - EF Core:视图的导航属性
- reactjs - react redux中如何将store传递给子组件?