Code:
<script type="text/javascript" charset="utf-8">
$(document).on('ready pjax:scriptcomplete',function(){
// Identify this question
var qID = '{QID}';
// Add a custom event handler to the slider inputs
$('body').on('slide.custom slideStop.custom', '#question'+qID+' input.answer-item', function(event) {
handleSliders($(this));
});
function handleSliders(el) {
// Remove the custom event handlers to prevent recursion (looping)
$('body').off('slide.custom slideStop.custom', '#question'+qID+' input.answer-item');
var thisName = $(el).attr('name').replace('slid', '');
var otherSlider = $('#question'+qID+' input.answer-item').filter(function () {
return $(this).attr('name').replace('slid', '') != thisName;
}).first();
var psSeparator = $(el).attr('data-ps-separator');
var psStep = $(el).attr('data-ps-step');
var sliderVal = Number($(el).val().replace(psSeparator, '.'));
// Move the slider
var otherName = $(otherSlider).attr('name').replace('slid', '');
window.activeSliders['s'+otherName].getSlider().setValue(100-sliderVal);
// Handle the inputs
var displayValue = $(otherSlider).val().toString().replace('.', psSeparator);
$(otherSlider).val(displayValue);
$(otherSlider).closest('li.answer-item').find('input.em_sq_validation').val(displayValue);
$(otherSlider).closest('li.answer-item').find('.slider').removeClass('slider-untouched');
// Fire Expression Manager
ExprMgr_process_relevance_and_tailoring('keyup', otherName, 'change');
// Now, re-add the custom event handler to the slider inputs
$('body').on('slide.custom slideStop.custom', '#question'+qID+' input.answer-item', function(event) {
handleSliders($(this));
});
}
});
</script>