Better init config checkboxes JS

This commit is contained in:
JonnyWong16 2018-05-08 17:40:17 -07:00
parent 365260401c
commit 178bd89e7c

View file

@ -1,34 +1,17 @@
function initConfigCheckbox(elem, reverse) {
function initConfigCheckbox(elem, reverse = false) {
var config = $(elem).closest('div').next();
config.css('overflow', 'hidden');
if (reverse) {
if ($(elem).is(":checked")) {
config.hide();
} else {
config.show();
}
if ($(elem).is(":checked")) {
config.toggle(!reverse);
} else {
if ($(elem).is(":checked")) {
config.show();
} else {
config.hide();
}
config.toggle(reverse);
}
$(elem).click(function () {
var config = $(this).closest('div').next();
if (reverse) {
if ($(this).is(":checked")) {
config.slideUp();
} else {
config.slideDown();
}
if ($(this).is(":checked")) {
config.slideToggleBool(!reverse);
} else {
if ($(this).is(":checked")) {
config.slideDown();
} else {
config.slideUp();
}
config.slideToggleBool(reverse);
}
});
}
@ -467,3 +450,7 @@ function forceMinMax(elem) {
function capitalizeFirstLetter(string) {
return string.charAt(0).toUpperCase() + string.slice(1);
}
$.fn.slideToggleBool = function(bool, options) {
return bool ? $(this).slideDown(options) : $(this).slideUp(options);
}