Почему бы просто не проверить значение "id", а если оно есть, просто использовать его. Если его нет, сгенерируйте уникальное случайное значение «id», передайте его элементу, а затем используйте его.
edit: вот подтверждение концепции jQuery для создания селектора для любого элемента, на который вы нажали.
$('*').unbind('click.m5').bind('click.m5', function(ev) {
if (this != ev.target) return;
var cn = function(elem) {
var n = $(elem).parent().children().index(elem);
return elem.tagName + ':nth-child(' + n + ')';
};
var selector = cn(this);
$(this).parents().each(function() {
if (/BODY|HTML/.test(this.tagName))
selector = this.tagName + '>' + selector;
else
selector = cn(this) + '>' + selector;
});
console.log("Selector: " + selector);
$(selector).css('background-color', 'red');
});