Изменить: Это подтвержденная ошибка в jQuery 1.3.1. Он исправлен в jQuery 1.3.2.
У меня есть меню управления YUI точно так же, как этот образец с подменю вверху.
Я попытался использовать код Yahoo для инициализации меню:
YAHOO.util.Event.onContentReady("mnuTopNav", function() {
var oMenuBar = new YAHOO.widget.MenuBar("mnuTopNav", {
autosubmenudisplay: true,
hidedelay: 750,
lazyload: true
});
oMenuBar.render();
});
Я вижу проблемы со страницами, на которых есть изображения, которые требуют времени для загрузки.
Я заметил, что заголовки будут немедленно отображаться (Связь/Покупки/Развлечения), но маленькие стрелки, указывающие на то, что есть подпункты, не появятся, пока все изображения не будут загружены.
Я подумал, что это очень странно. Я даже попытался отключить код для JQuery, чтобы увидеть, будет ли инициализироваться до того, как будут сделаны изображения (это то, что $(function()
я думал, что должен был делать).
$(function(){
var oMenuBar = new YAHOO.widget.MenuBar("mnuTopNav", {
autosubmenudisplay: true,
hidedelay: 750,
lazyload: true
});
oMenuBar.render();
});
К моему удивлению, у меня все еще была такая же проблема. Меню не будет инициализироваться, пока не будет загружена вся страница.
Это, безусловно, изображения, которые ждут.
Примечание. Эта проблема возникает только в Internet Explorer. Firefox, похоже, поднимает это событие onContentReady ПЕРЕД загрузкой изображений.
Могу ли я решить эту проблему?
Изменить: Это подтвержденная ошибка в jQuery 1.3.1. Он исправлен в jQuery 1.3.2.