From e299a57a72ee786818cad4f9b8e3aea3b6fb8544 Mon Sep 17 00:00:00 2001 From: Alon Levy Date: Tue, 28 Oct 2014 17:21:33 +0200 Subject: textanalysis.ui: use input event if it exists, fallback to polling of 50ms (not 5ms) otherwise --- scripts/textanalysis.ui.js | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) (limited to 'scripts/textanalysis.ui.js') diff --git a/scripts/textanalysis.ui.js b/scripts/textanalysis.ui.js index 75eae67e..2eadff0b 100644 --- a/scripts/textanalysis.ui.js +++ b/scripts/textanalysis.ui.js @@ -129,18 +129,25 @@ return { } }); - /* TODO: don't use interval by default but only if keys are comming to fast (but still - 5 ms??) */ - window.setInterval(function() { - if (element.val() != text) { - - if (text.length * 8 > 500) { - element.css('width', text.length * 8 + 20); - } - // text changed + if ('oninput' in document.documentElement) { + element.on('input', function(e) { text = element.val(); analyzeSentence(text, false); - } - }, 5); + }); + } else { + console.log('textanalysis.ui: fallback to polling'); + window.setInterval(function() { + if (element.val() != text) { + if (text.length * 8 > 500) { + element.css('width', text.length * 8 + 20); + } + // text changed + text = element.val(); + analyzeSentence(text, false); + suggestionChange = false; + } + }, 50); + } } }; }); // define -- cgit v1.3.1