Ho diversi elementi su una pagina HTML che hanno la stessa classe, ma sono tipi di elementi diversi. Voglio scoprire il nome del tag dell'elemento mentre lo sovrappongo, ma .attr non accetta "tag" o "tagname".
Ecco cosa intendo. Considera questi elementi in una pagina:
<h1 class="rnd">First</h1>
<h2 id="foo" class="rnd">Second</h2>
<h3 class="rnd">Third</h3>
<h4 id="bar" class="rnd">Fourth</h4>
Ora voglio eseguire qualcosa di simile per assicurarmi che i miei elementi abbiano tutti un ID se uno non è già definito:
$(function() {
$(".rnd").each(function(i) {
var id = $(this).attr("id");
if (id === undefined || id.length === 0) {
// this is the line that's giving me problems.
// .attr("tag") returns undefined
$(this).attr("id", "rnd" + $(this).attr("tag") + "_" + i.toString());
}
});
});
Il risultato che vorrei sarebbe che gli elementi H2 e H4 avrebbero quindi un id di
rndh2_1
rndh4_3
rispettivamente.
Qualche idea su come posso scoprire il nome del tag dell'elemento rappresentato da "questo"?