我有一组元素,我正在使用一些链接进行过滤。元素具有定义单击链接时是否应显示/隐藏它们的类。一切正常,除了每次点击我都会收到这个错误:
未捕获的错误:语法错误,无法识别的表达式:。jquery.js?v=f7cfcab3b68cbd79eec30032754a6719:3
这与我.not()
下面的选择器有关。我尝试了各种替代方案(例如:not
,以及包括/不包括单引号和双引号,但没有什么能摆脱错误:
var teamFilters = {
dept: '',
field: ''
}, filter;
$('.team-member-filters a').click(function() {
var link = $(this);
filter = $(this).attr('class');
if (link.parent().hasClass('active')) {
link.parent().removeClass('active');
teamFilters[filter] = '';
} else {
link.parent().addClass('active').siblings().removeClass('active');
teamFilters[filter] = $(this).attr('id');
}
$('.main-body .team-member').animate({opacity: 1}, 250);
$('.main-body .team-member').not('.' + teamFilters.dept).animate({opacity: 0.25}, 250);
$('.main-body .team-member').not('.' + teamFilters.field).animate({opacity: 0.25}, 250);
//console.log(teamFilters.dept);
});
被过滤的单个元素的 HTML 是:
<div class="team-member secretariate reducing">
<div>
<img src="/~climatex/files/cache/9d8d7862edc9f22dab5245926f79dace_f52.jpg" width="75" height="75" alt="">
<p class="name">Firstname Lastname</p>
<p class="position">Job title</p>
</div>
<a class="email" href="mailto:name@email.com">name@email.com</a>
<a href="http://www.url.com" target="_blank">www.url.com</a>
</div>
选择'.' + teamFilters.dept
器抛出错误,但由于一切正常,我不知道为什么。
我试图'.'+teamFilters.dept
在选择器之外连接变量,.not()
但它没有任何区别。
我正在运行 jQuery 1.7.2。
任何帮助表示赞赏!