Browse Source

Implemented click on CSK on train search page

master
Kenneth Bruen 2 years ago
parent
commit
b0afb0dfea
Signed by: kbruen
GPG Key ID: C1980A470C3EE5B1
  1. 27
      train.js

27
train.js

@ -8,6 +8,8 @@ function goToTrain(number) {
window.location.href = url.toString()
}
var focusedElement = null
var _rebuildDebounce = null
var _rebuildRequested = false
function rebuildSuggestions() {
@ -55,6 +57,9 @@ function rebuildSuggestions() {
onAction(e)
}
})
suggestionLi.addEventListener('focus', function (e) {
focusedElement = suggestionLi
})
var trainNameP = document.createElement('p')
suggestionLi.appendChild(trainNameP)
@ -82,12 +87,26 @@ function lsk() {
document.getElementById('trainNumber').focus()
}
function csk() {
if (focusedElement == null) {
return
}
if (focusedElement.id === 'trainNumber') {
goToTrain(document.activeElement.value.trim())
}
else {
focusedElement.click()
}
}
window.addEventListener('load', function (e) {
var trainNumber = document.getElementById('trainNumber')
trainNumber.addEventListener('input', function (e) {
rebuildSuggestions()
})
trainNumber.addEventListener('focus', function (e) {
focusedElement = trainNumber
document.getElementsByClassName('lsk')[0].textContent = ''
document.getElementsByClassName('csk')[0].textContent = 'Search'
})
@ -106,10 +125,18 @@ window.addEventListener('load', function (e) {
lsk()
})
})
document.querySelectorAll('.csk').forEach(function (cskElem) {
cskElem.addEventListener('click', function (e) {
csk()
})
})
document.body.addEventListener('keydown', function (e) {
if (e.key == 'SoftLeft') {
lsk()
}
else if (e.key == 'Enter') {
csk()
}
})
fetch('https://scraper.infotren.dcdev.ro/v2/trains')

Loading…
Cancel
Save