إعادة تعيين مسج النظائر الفلاتر نوع
-
13-12-2019 - |
سؤال
لدي عدد من النظائر مسج الفلاتر و نوعا.كل شيء يعمل بشكل جيد حقا, ولكن أود أن إنشاء زر إعادة الضبط.
لقد حاولت التالية (http://stackoverflow.com/questions/10297558/isotope-reset-all-combination-filters) , ولكن في حين أنه لا يبدو أن تعيين العناصر (على النقرة الثانية) ، فإنه لا إعادة تعيين أزرار مرشح.
المحلول
أنا أفترض أنك تعني "فإنه لا إعادة تعيين ظهور من تصفية أزرار" عند كتابة
[...] أنه لا إعادة تعيين أزرار مرشح.
إذا كان هذا هو الحال, و ظهور الفلتر-أزرار التحكم بواسطة CSS-الطبقات كما في النظائر هي أمثلة ، عليك ببساطة لإزالة قال CSS-فئة(es) من الزر تصفية العناصر عندما يقوم المستخدم بالنقر فوق "إعادة تعيين"زر.
في المصدر هـ.ز. النظائر هي 'مجموعة فلاتر'-مظاهرة ستجد التعليمات البرمجية التالي الذي يتعامل مع كل ما يحدث عند واحد من تصفية أزرار النقر:
// filter buttons
$('.filter a').click(function(){
var $this = $(this);
// don't proceed if already selected
if ( $this.hasClass('selected') ) {
return;
}
var $optionSet = $this.parents('.option-set');
// change selected class
$optionSet.find('.selected').removeClass('selected');
$this.addClass('selected');
// store filter value in object
// i.e. filters.color = 'red'
var group = $optionSet.attr('data-filter-group');
filters[ group ] = $this.attr('data-filter-value');
// convert object into array
var isoFilters = [];
for ( var prop in filters ) {
isoFilters.push( filters[ prop ] )
}
var selector = isoFilters.join('');
$container.isotope({ filter: selector });
return false;
});
أهم رمز (أمل) ذات الصلة السؤال يمكن العثور عليها في هذه السطور:
$optionSet.find('.selected').removeClass('selected');
$this.addClass('selected');
- السطر الأول يزيل جميع 'المختارة'-الطبقات من جميع العناصر في $ب optionset (هذا الأخير مجرد كونها مجموعة من الأزرار التي تستهدف مرشح واحد-الملكية)
- والثاني يحدد 'اختيار'الدرجة للعنصر المستخدم النقر على