como pueden ver en el titulo tengo un problema que varias personas han tenido en esta plataforma, pero nada me funciona. Me sale el siguiente error en mi consola:
Uncaught RangeError: Maximum call stack size exceeded at new UseArray (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:346:20) at new Elements (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:121:26) at new Structure (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:63:29) at new CreateLink (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:310:30) at new Navigation (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:294:25) at new Elements (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:123:24) at new Structure (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:63:29) at new CreateLink (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:310:30) at new Navigation (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:294:25) at new Elements (quiz.html?_ijt=b3fubmjhnt75jg0ptc21kkq5g3&_ij_reload=RELOAD_ON_SAVE:123:24)No tengo idea de cómo solucionarlo porque probé todo lo que pude encontrar en las últimas horas. El principal problema parece ser esta función:
class DropdownFunctions { DropDownClose(e) { const tgt = e.target; if (tgt.matches('.dropBtn')) { this.DropDownCloseFunction(); } } DropDownCloseFunction() { let dropdowns = document.getElementsByClassName("dropDiv"); for (let i = 0; i < dropdowns.length; i++) { let openDropdown = dropdowns[i]; if (openDropdown.classList.contains('show')) { openDropdown.classList.remove('show'); } else { openDropdown.classList.add('show'); } } } }Y tengo un montón de funciones como esta:
class CreateLink { constructor() { this.tmp = [] this.array = new UseArray(); this.structure = new Structure(this.array.Quiz); } getLink() { let url = this.structure.url; for (let i = 0; i < url.length; i++) { // Check if question is from the same quiz part and adds a , between chosen answers and add the right prefix at the beginning if (url[i].length > 0) { this.tmp.push("" + this.array.Quiz[i].prefix + url[i].join(",")) } } // If answers are from different quiz parts add a & between answers return "" + this.tmp.join("&"); } }Alguien sabe una manera de arreglarlo? JSFiddle: https://jsfiddle.net/thijsl0705/1s98gumk/4/