Guten Morgen,
seit ein paar Stunden beschäftigt mich dieser Fehler, ich weis nicht warum er auftritt, die Funktion ist ja definiert.
Über hilfreiche Antworten würde ich mich freuen.
Mein Code:
Spoiler anzeigen
Fehler Meldung:
seit ein paar Stunden beschäftigt mich dieser Fehler, ich weis nicht warum er auftritt, die Funktion ist ja definiert.
Über hilfreiche Antworten würde ich mich freuen.
Mein Code:
JavaScript-Quellcode
- class SearchBar {
- /**
- * SearchBar Constructor
- * @param {Element} input
- * @param {Element} suggestions
- */
- constructor(input, suggestions, suggestions_array) {
- this['eInput'] = input
- this['eSuggestions'] = suggestions
- this['arraySuggestions'] = suggestions_array
- this.setEventListeners()
- }
- setEventListeners() {
- this.eInput.addEventListener('keydown', this.eInput_onKeyDown)
- this.eInput.addEventListener('focusin', this.eInput_onFocusIn)
- this.eInput.addEventListener('focusout', this.eInput_onFocusOut)
- this.eInput.addEventListener('keyup', this.eInput_onKeyUp)
- }
- suggestionsToggle(state) {
- if (state == true) {
- this.eSuggestions.style.display = 'unset'
- }
- if (state == false) {
- this.eSuggestions.style.display = 'none'
- }
- }
- eInput_onKeyDown(e) {
- if (e.key == "Enter") {
- this.blur()
- }
- }
- eInput_onFocusIn(e) {
- var inp = e.target.parentNode.parentNode
- inp.classList.add('focus')
- }
- eInput_onFocusOut(e) {
- var inp = e.target.parentNode.parentNode
- inp.classList.remove('focus')
- this.suggestionsToggle(false)
- }
- eInput_onKeyUp(e) {
- const text = this.value
- if (text == '') {
- this.suggestionsToggle(false)
- } else {
- this.suggestionsToggle(true)
- }
- if (!text) return
- const suggestionArray = this.arraySuggestions.filter((data) => {
- return data.startsWith(text.toLowerCase())
- })
- this.suggestionsUpdate(suggestionArray)
- }
- eSuggestions_onItemClick(e) {
- alert(e.target.getAttribute('value'))
- }
- suggestionsUpdate(e) {
- // Clearing suggsetion list
- this.eSuggestions.innerHTML = ''
- if (e.length == 0) {
- this.suggestionsToggle(false)
- }
- e.forEach((sugg) => {
- var liElement = document.createElement('li')
- liElement.setAttribute('value', sugg)
- liElement.addEventListener('click', this._eSuggestions_onItemClick)
- liElement.appendChild(document.createTextNode(sugg))
- this.eSuggestions.appendChild(liElement)
- })
- }
- }
Fehler Meldung: