JSFiddle - React, Tailwind, and code Playground
HTML
<div id="nav">
<input type="checkbox" class="all" id="all" checked="checked" name/> Check/Uncheck all<br />
<input type="checkbox" name="overlay-1" class="test" id="overlay-1" checked="checked"> Overlay 1 <br/>
<input type="checkbox" name="overlay-2" class="test" id="overlay-2" checked="checked"> Overlay 2 <br/>
<input type="checkbox" name="overlay-3" class="test" id="overlay-3" checked="checked"> Overlay 3 <br/>
</div>
<div class="overlay-1">Overlay 1 Content</div>
<div class="overlay-2">Overlay 2 Content</div>
<div class="overlay-3">Overlay 3 Content</div>
CSS
.hide {display:none;}
.overlay-1 {background-color:#333; color:#FFF;}
.overlay-2 {background-color:#666; color:#FFF;}
.overlay-3 {background-color:#999; color:#FFF;}
.overlay-1, .overlay-2, .overlay-3 { padding:20px; margin-top:20px;}
JavaScript
$(document).ready(function() {
$hulk = $("#overlay-1,#overlay-2,#overlay-3");
$hulk.change(function() {
$("." + this.id).toggleClass("hide", !this.checked);
if ($('.test:checked').length == $hulk.length)
$('.all').prop('checked', true);
else $('.all').prop('checked', false);
});
$('.all').click(function() {
$(this).nextAll('input[type=checkbox]').prop('checked', this.checked);
$hulk.trigger('change');
});
});