JSFiddle - React, Tailwind, and code Playground
HTML
<ul id="filters" class="option-set clearfix" data-option-key="filter">
<li><a href="#filter" data-option-value="*" class="selected">Show all</a></li>
</ul>
<div class="project-item Video">
<p>Test 1</p>
</div>
<div class="project-item Photography">
<p>Test 2</p>
</div>
<div class="project-item Video Photography">
<p>Test 3</p>
</div>
JavaScript
var categories = [];
$(".project-item").each(function() {
var cats = $(this).attr("class").split(" ");
for(var i = 0; i < cats.length; i++) {
if (cats[i] != "project-item" && $.inArray(cats[i], categories) == -1)
categories.push(cats[i]);
}
});
for (var i = 0; i < categories.length; i++) {
var $li = $("<li></li>").appendTo("#filters");
var $a = $("<a></a>").attr("href", "#").data("option-value", categories[i]).text(categories[i]).appendTo($li);
};