Sto creando una funzione il cui risultato deve essere un'HTMLCollection (Non va bene un'array di HTMLElement)
Il problema è che con
Mi da l'errore Uncaught TypeError: Illegal constructorCodice:var result = new HTMLCollection;
Come posso risolvere?
Sto creando una funzione il cui risultato deve essere un'HTMLCollection (Non va bene un'array di HTMLElement)
Il problema è che con
Mi da l'errore Uncaught TypeError: Illegal constructorCodice:var result = new HTMLCollection;
Come posso risolvere?
Non è possibile creare nuove istanze di quell'oggetto. Ma a che ti serve precisamente?
Ho da poco scoperto il metodo del dom querySelectorAll e ho fatto una funzione per estenderlo su IE8- (che non lo supportato o solo parzialmente)... funziona tutto bene solo che ho il risultato in un array e non in un'HTMLColection, quindi poi non posso utilizzare altre funzioni dom dopo di questa...
Forse però sono appena riuscito a riuscito a risolvere (nel senso che per ora è solo un idea)...
Una volta che ho l'array lo vonverto in HTMLCollection con qualcosa tipo...
Solo che così perderei il riferimento all'elemento originale?Codice:var contenitore = document.createElement ("div"); for (i = 0; i < mioarray.length; i++) { contenitore.appendChild (mioarray[i]) } var risultato = contenitore.childNodes
Facendo così apporti modifiche al documento, perché vai a spostare i nodi mettendoli dentro un altro elemento. Non ho però ancora ben capito cos'ha in più un HTMLCollection rispetto ad un array, usi per caso il metodo item?
Ah, poi la proprietà childNodes contiene un'istanza dell'interfaccia NodeList, non di HTMLCollection.
Ultima modifica di karl94 : 24-04-2014 alle ore 10.22.05
Usavo namedItem...
Vabbe, seguirò un'altra strada :D
Beh, potresti pure implementarlo quel metodo, anche se non mi è ben chiara l'utilità: visto che stai usando un selettore CSS puoi filtrare già lì a seconda del nome. Ad ogni modo, perché non usare qualcosa di più pronto e maneggevole come jQuery?