2015-03-02 3 views
1

Я пытаюсь сдвинуть ползунок диапазона HTML5 и обновить текст в div до любого значения, которое принимает ползунок . Я заметил, что IE и Firefox + Chrome интерпретировать события диапазон HTML5 по-разному для JQuery-х on("change" против on("input"jquery on ("change" vs on ("input" - попытка унифицировать поведение в IE против FF против Chrome

в Linux и Windows, Firefox + Chrome и ждать релиза мыши для on("change", и огонь немедленно on("input". в Windows IE срабатывает немедленно на on("change" и ничего не делает для on("input (т.е. он не работает)

Я тестировал это на FF36, Chrome40, IE11.

Попробуйте это в this fiddle, в разных браузерах, заменив change на input.

Мой вопрос: есть ли способ, который я могу сделать, чтобы все браузеры обновлялись немедленно, когда движется ползунок? Должен ли я писать отдельный код, чтобы проверить, в каком браузере я участвую, прежде чем вызывать вариант функции .on(?

ответ

1

Почему бы не использовать обе привязки сразу?

$(document).on('input change', sliderSelector, function() { 
    alert('TA-DA-DA-DAAA!'); 
}); 
+0

Святая Молия! Я не знал, что вы можете складывать такие входы! Собираюсь убежать и читать об этом сейчас ... – Escher

0

Вы можете связать оба события.

$(element).on("input change", eventHandler); 
Смежные вопросы