Самый точный способ внедрения функциональности после добавления элемента DOM в дерево - это , который требует, чтобы он был расположен прямо под ним в разметке. Это выглядит менее сексуально, чем что-то вроде onContentReady, но onContentReady - это всего лишь механизм опроса, который может в конечном итоге выполнить ваш обратный вызов примерно в то же время, что и domready, во всяком случае, еще долго после того, как соответствующее поддерево DOM готово для сценариев.
Браузеры могут довольно быстро собрать дерево DOM. А с помощью решения опроса, такого как onContentReady, вы замедляете сборку / рендеринг страницы, выполняя код, который ищет целевой элемент (-ы) каждые несколько миллисекунд.
Я бы придерживался, чтобы ваши были в нижней части , или, если нужно, поместите код "must-run-now-damnit" в после требуемой разметки.
Я не знаком с API-интерфейсом dojo, поэтому не могу ответить на ваш конкретный вопрос относительно dojo, если приведенное выше не поможет.
(отредактировано, чтобы экранировать ведущие теги <, чтобы они отображались) </p>