我有这个 jQuery 片段(如下),它为我的每个元素添加了一个单独的 CSS 选择器,'.filter-name'
并且我对它的作用感到满意。
jQuery('.filter-name').each(function(i){
jQuery(this).addClass('title'+(i+1));
});
我的问题是每次单击每个元素时我都必须触发一个'clicked'
类,这是由下面的代码完成的,它可以工作,但在代码中看起来不是很优雅。有没有办法改进这个?
jQuery('.title1').click(function(){
jQuery('.title1').toggleClass('clicked');
});
jQuery('.title2').click(function(){
jQuery('.title2').toggleClass('clicked');
});
jQuery('.title3').click(function(){
jQuery('.title3').toggleClass('clicked');
});
jQuery('.title4').click(function(){
jQuery('.title4').toggleClass('clicked');
});
jQuery('.title5').click(function(){
jQuery('.title5').toggleClass('clicked');
});
jQuery('.title6').click(function(){
jQuery('.title6').toggleClass('clicked');
});
我努力了 :
jQuery('.title1, .title2, .title3, .title4, .title5, .title6').click(function(){
jQuery('.title1, .title2, .title3, .title4, .title5, .title6').toggleClass('clicked');
});
但这只是同时触发所有这些,这不是我想要 jQuery 做的。
ps 使用 jQuery in noConflict();
,因此使用 jQuery 选择器。