Sono sicuro che questo è semplice ma non ho idea di come farlo. Come posso contare la quantità di elementi DOM nella mia pagina HTML? Volevo farlo in un userscript o bookmarklet ma non ho idea di come iniziare!Firefox O JavaScript, conta il DOM
risposta
Usare questo per Element
nodi:
document.getElementsByTagName("*").length
Per ogni nodo, è possibile estendere Node
in questo modo:
Node.prototype.countChildNodes = function() {
return this.hasChildNodes()
? Array.prototype.slice.apply(this.childNodes).map(function(el) {
return 1 + el.countChildNodes();
}).reduce(function(previousValue, currentValue, index, array){
return previousValue + currentValue;
})
: 0;
};
Poi tutto quello che dovete fare è chiamare document.countChildNodes
.
c'è un modo per aggiungere il numero di elementi all'interno degli iframe? – corretge
@corretge Ciò sarebbe possibile se si ha accesso a 'contentDocument'. Basta iterare gli elementi che ottieni con 'document.getElementsByTagName (" * ")' e contarli come 1 e per ciascun nodo dell'elemento 'iframe' (' tagName === 'IFRAME'') aggiungi il numero di elementi nel suo 'contentDocument 'invece. – Gumbo
Grazie mille! Ho un altro "piccolo" problema: domini, protocolli e porte devono corrispondere. Normale :) – corretge
// È possibile utilizzare lo stesso metodo per ottenere il conteggio di ogni tag, se è importante
function tagcensus(pa){
pa= pa || document;
var O= {},
A= [], tag, D= pa.getElementsByTagName('*');
D= A.slice.apply(D, [0, D.length]);
while(D.length){
tag= D.shift().tagName.toLowerCase();
if(!O[tag]) O[tag]= 0;
O[tag]+= 1;
}
for(var p in O){
A[A.length]= p+': '+O[p];
}
A.sort(function(a, b){
a= a.split(':')[1]*1;
b= b.split(':')[1]*1;
return b-a;
});
return A.join(', ');
}
alert (tagcensus())
In JavaScript si può fare
document.getElementsByTagName("*").length
In jQuery si può fare
jQuery('*').length
- 1. Come accedere di Firefox DOM (o contenuto HTML) dall'esterno Firefox
- 2. È console.dir() in javascript o firefox asincrono?
- 3. Come confrontare due DOM o nodi DOM in generale?
- 4. iOS Javascript DOM "Congelamento?"
- 5. Trova quale javascript cambia il DOM?
- 6. JavaScript DOM rimuovi elemento
- 7. Evento Visibilità JQuery/Javascript/DOM
- 8. Javascript: Clear Console [Firefox]
- 9. Ridimensionamento dell'immagine o algoritmo di duplicazione DOM in JavaScript?
- 10. Un parser JavaScript per DOM
- 11. Javascript efficiente per modifiche DOM
- 12. Javascript funziona in Safari ma non Chrome o Firefox
- 13. Come caricare un file javascript nel DOM usando il selenio?
- 14. Javascript: DOM Eccezione: INVALID_CHARACTER_ERR (5)
- 15. jQuery html() in Firefox (utilizza .innerHTML) ignora le modifiche DOM
- 16. Semplice log console javascript (FireFox)
- 17. Elemento mobile JavaScript nel DOM
- 18. HTML5 trascinare la manipolazione DOM con javascript
- 19. corrotto o troncato in Firefox
- 20. Jquery conta caratteri
- 21. jQuery/Javascript - event.target.id su Firefox
- 22. forzare il DOM ridisegnare con javascript su richiesta
- 23. È possibile controllare il valore di Firefox DNT con javascript?
- 24. Javascript DOM "questo" L'oggetto non è corretto
- 25. DOM/Javascript: ottenere testo dopo tag
- 26. Oggetto DOM JavaScript su oggetto jQuery
- 27. Javascript DOM style.backgroundColor non funziona correttamente
- 28. Evento Javascript trigger su Aggiungi a DOM
- 29. Trova javascript che sta modificando l'elemento DOM
- 30. Qual è il DOM e BOM in JavaScript?
Vuoi conoscere i nodi DOM oi nodi DOM che sono elementi HTML? Il DOM include elementi come testo, commenti e attributi come nodi. – edeverett