I have three sets of checkboxes which allow me to filter a number of divs based on data attributes. This works great but not as I need it to.
If you visit the jsfidd
You should hide the elements before you filter them and show them after, add a .hide() before the .filter(selector). Like so:
.hide()
.filter(selector)
$('.flowers > div').hide().filter(selector).show();
This should hide all of the elements, then show the selected elements.
DEMO