From 0804c90028aa4551b540e845b0dfdb20021d6dc4 Mon Sep 17 00:00:00 2001 From: Daniel Ruf Date: Thu, 29 Mar 2018 23:26:19 +0200 Subject: [PATCH] fix: deduplicate the code for the event listeners --- js/foundation.slider.js | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/js/foundation.slider.js b/js/foundation.slider.js index 67dfeb8d0..d9e67b112 100644 --- a/js/foundation.slider.js +++ b/js/foundation.slider.js @@ -460,20 +460,19 @@ class Slider extends Plugin { curHandle, timer; + const handleChangeEvent = function(e) { + const idx = _this.inputs.index($(this)); + _this._handleEvent(e, _this.handles.eq(idx), $(this).val()); + }; + // IE only triggers the change event when the input loses focus which strictly follows the HTML specification // listen for the enter key and trigger a change // @see https://html.spec.whatwg.org/multipage/input.html#common-input-element-events this.inputs.off('keyup.zf.slider').on('keyup.zf.slider', function (e) { - if(e.keyCode == 13) { - var idx = _this.inputs.index($(this)); - _this._handleEvent(e, _this.handles.eq(idx), $(this).val()); - } + if(e.keyCode == 13) handleChangeEvent.call(this, e); }); - this.inputs.off('change.zf.slider').on('change.zf.slider', function(e) { - var idx = _this.inputs.index($(this)); - _this._handleEvent(e, _this.handles.eq(idx), $(this).val()); - }); + this.inputs.off('change.zf.slider').on('change.zf.slider', handleChangeEvent); if (this.options.clickSelect) { this.$element.off('click.zf.slider').on('click.zf.slider', function(e) { -- 2.47.2