我正在使用jQuery插件MixItUp對我擁有的內容列表進行過濾。如何使用'mixitup'插件自定義多重過濾?
該插件開箱即用地提供了一個multiFilter,但問題是它顯示了所有內容,然後當您單擊其中一個篩選器時,它會將其從列表中刪除,而我希望它在您選擇時其中一個過濾器,它只顯示一個。如果您點擊另一個,它也會顯示相關內容。 There's a demo與我想要的相似,但它比我需要的更復雜 - 它有兩個類別的過濾器,我只需要一個。
在演示中,他們不使用'multiFilter'選項。相反,他們似乎定義了「過濾器」選項的字符串,然後根據點擊過濾器將其吐出。我曾嘗試解構他們所做的事情,並將其改造成我想要的樣子,但未能真正獲得任何地方。
基本上我迷路了,所以希望有人以前玩過這個插件。我只想在正確的方向踢一腳。我是否需要編寫自定義點擊功能並忘記使用multiFilter,嘗試設置過濾器字符串,還是可以自定義默認multiFilter?
There's a fiddle here with the plugin js added and the default multiFilter functionality
HTML
<div id="filter">
<span>Filter</span>
<ul class="filter-list">
<li data-filter="all" class="filter active"><a href="#">All</a></li>
<li data-filter="lemon" class="filter"><a href="#">Lemon</a></li>
<li data-filter="orange" class="filter"><a href="#">Orange</a></li>
<li data-filter="apple" class="filter"><a href="#">Apple</a></li>
</ul>
</div>
<ul id="grid">
<li class="mix lemon">
<h3>Lemon</h3>
<p>Some text here</p>
</li>
<li class="mix orange">
<h3>Orange</h3>
<p>Some text here</p>
</li>
<li class="mix apple">
<h3>Apple</h3>
<p>Some text here</p>
</li>
</ul>
JS
$('#grid').mixitup({
multiFilter: 'true',
showOnLoad: 'lemon orange apple'
});
你解決了這個問題嗎?我看了看你的小提琴,但它似乎工作正常。請讓我知道你是否需要更多幫助! – patrickkunka
謝謝@patrickkunka。這裏的過濾器可以完美的工作。我最終通過使用您的國家公園演示並更改了自定義腳本(我在下面添加了我的答案),從而獲得了我想要的內容。真的很酷的插件。如果您取消選擇所有其他過濾器,我也會將'全部'激活 - 我認爲這對您的國家公園演示很有幫助 – davidpauljunior