Skip to content

Instantly share code, notes, and snippets.

@xaqrox
Created June 1, 2016 15:48
Show Gist options
  • Save xaqrox/540bd0527a52efc5a343c3e5a5f9f1dc to your computer and use it in GitHub Desktop.
Save xaqrox/540bd0527a52efc5a343c3e5a5f9f1dc to your computer and use it in GitHub Desktop.
$(document).ready( function() {
$.fn.extend({
toggleCheck: function (isChecked) {
var $element = $(this);
$element.find('input').prop('checked', isChecked);
$element.toggleClass('selected', isChecked);
}
});
var $containers = $('span.donation_amount_option_container'),
$checkedInput = $containers.find('input:checked'),
hasValue = $checkedInput.length,
defaultValue = 50;
$containers.each( function () {
var $container = $(this),
$input = $container.find('input'),
isChecked = $input.is($checkedInput),
value = $input.val(),
valueClass = 'donate-' + value,
isDefault = value == defaultValue;
$container.addClass(valueClass);
if (hasValue) {
$container.toggleClass('selected', isChecked);
}
else {
$container.toggleCheck(isDefault);
}
});
$containers.click( function () {
var clicked = this;
$containers.each( function () {
var $container = $(this),
isClicked = $container.is(clicked);
$container.toggleCheck(isClicked);
});
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment