Я использую меню, вкладки и т. Д. c. на моей странице HTML, которую нужно инициализировать в JavaScript, например:
<ul class="k-menu">
...some menu items
</ul>
<script type="text/javascript">$('.k-menu').kendoMenu();</script>
// This works without any problem
Теперь я хочу удалить из HTML и поместить в отдельный файл JS.
$('ul.k-menu').each((i, menu) => {
if ($(menu).data('kendoMenu') === undefined) {
$(menu).kendoMenu();
}
});
Но теперь, как я могу запустить kendoMenu сразу после загрузки элемента ul? Когда я буду использовать следующий пример, kendoMenu будет инициализирован после загрузки документа:
$(document).ready(function() {
$('ul.k-menu').each((i, menu) => {
if ($(menu).data('kendoMenu') === undefined) {
$(menu).kendoMenu();
}
});
});
Но я не хочу ждать, пока весь документ будет загружен. Я хочу запустить код после того, как элемент будет загружен (перед загрузкой всего документа).
Я попытался использовать setTimenout, но я не уверен, если элемент загружен до того, как тайм-аут сработает.
setTimeout(() => {
$('ul.k-menu').each((i, menu) => {
if ($(menu).data('kendoMenu') === undefined) {
$(menu).kendoMenu();
}
});
}, 100);