JSFiddle - React, Tailwind, and code Playground
by shaneblake
HTML
<div></div>
<div>
<div id="level1">
<div id="level2">
<div class="findMe"> Find Me </div>
<div> ignore me </div>
</div>
</div>
</div>
<hr>
[<h2 id="output"></h2>]
JavaScript
$(function() {
var uid = $.map($(".findMe").parentsUntil('body').andSelf(), function(o, i) {
return o.id || o.tagName.toLowerCase() + $(o).prevAll(o.tagName).length;
}).join('_');
$("#output").text(uid);
$("div").each(function() {
var uid = $.map($(".findMe").parentsUntil('body').andSelf(), function(o, i) {
return o.id || o.tagName.toLowerCase() + $(o).prevAll(o.tagName).length;
}).join('_');
$(this).data("uid", uid);
});
});