На самом деле нет причин делать что-то подобное. Лучше использовать классы типа
<p class = "my_class">
А затем сделайте что-то вроде
$('p.my_class').html('bah');
Edit:
Основная причина, по которой использование поддельных тегов является плохим, заключается в том, что он делает ваш HTML недействительным и может испортить отображение вашей страницы в определенных браузерах, поскольку они не знают, как обращаться с созданным вами тегом (хотя большинство будет относиться к нему как к некоторому DIV).
Это основная причина, по которой это нехорошо, оно просто нарушает стандарты и приводит к запутанному коду, который трудно поддерживать, потому что вы должны объяснить, для чего нужны ваши пользовательские теги.
Если вы действительно решили использовать пользовательские теги, вы можете сделать свою веб-страницу допустимым файлом XML, а затем использовать XSLT для преобразования XML в действительный HTML. Но в этом случае я бы просто придерживался классов.