diff options
author | Noah Loomans <noahloomans@gmail.com> | 2016-09-05 16:23:12 +0200 |
---|---|---|
committer | Noah Loomans <noahloomans@gmail.com> | 2016-09-05 16:23:12 +0200 |
commit | 8e4c9d666672e415957ae8b99e7ab400342f8b98 (patch) | |
tree | 885bb8e4e0e887ba07a72ba90f5254c9d0d0a070 /public/javascripts | |
parent | ff5f463f77d7eef492d3ae926ce65cdfdb45dfdb (diff) |
add click on autocomplete suport
Diffstat (limited to 'public/javascripts')
-rw-r--r-- | public/javascripts/bundle.js | 11 | ||||
-rw-r--r-- | public/javascripts/main.js | 11 |
2 files changed, 20 insertions, 2 deletions
diff --git a/public/javascripts/bundle.js b/public/javascripts/bundle.js index b15380a..0b22d45 100644 --- a/public/javascripts/bundle.js +++ b/public/javascripts/bundle.js @@ -96837,7 +96837,9 @@ getUsers().then(function (users) { } }) - searchNode.addEventListener('submit', function (e) { + searchNode.addEventListener('submit', submitForm) + + function submitForm (e) { e.preventDefault() const indexInResult = selectedResult === -1 ? 0 : selectedResult const selectedUser = users[results[indexInResult].index] @@ -96848,6 +96850,13 @@ getUsers().then(function (users) { inputNode.blur() scheduleIframe.src = getURLOfUser(0, selectedUser.type, selectedUser.index + 1) + } + + autocompleteNode.addEventListener('click', function (e) { + if (e.target.tagName === 'LI' && e.target.parentElement === autocompleteNode) { + selectedResult = Array.prototype.indexOf.call(e.target.parentElement.childNodes, e.target) + submitForm({preventDefault: function () {}}) // HACK: this is horrible. + } }) }) diff --git a/public/javascripts/main.js b/public/javascripts/main.js index c492ace..f311e17 100644 --- a/public/javascripts/main.js +++ b/public/javascripts/main.js @@ -50,7 +50,9 @@ getUsers().then(function (users) { } }) - searchNode.addEventListener('submit', function (e) { + searchNode.addEventListener('submit', submitForm) + + function submitForm (e) { e.preventDefault() const indexInResult = selectedResult === -1 ? 0 : selectedResult const selectedUser = users[results[indexInResult].index] @@ -61,6 +63,13 @@ getUsers().then(function (users) { inputNode.blur() scheduleIframe.src = getURLOfUser(0, selectedUser.type, selectedUser.index + 1) + } + + autocompleteNode.addEventListener('click', function (e) { + if (e.target.tagName === 'LI' && e.target.parentElement === autocompleteNode) { + selectedResult = Array.prototype.indexOf.call(e.target.parentElement.childNodes, e.target) + submitForm({preventDefault: function () {}}) // HACK: this is horrible. + } }) }) |