jquery для обновления окна просмотра?

У меня возникли проблемы с устранением проблемы с макетом, с которой я столкнулся, и я надеялся получить некоторое представление.

У меня слева панель меню, которая открывается и сворачивается, а справа у меня есть Galleria, которая настроена на адаптивный режим, что означает, что ее размер изменяется при изменении размера окна.

Цель, которую я намереваюсь достичь, заключается в том, что когда моя панель меню рушится, я хочу, чтобы отзывчивая Галерея изменяла размер и наоборот.

прямо сейчас, если панель начинается в свернутом положении и расширяется, ширина документа увеличивается на ширину панели меню, а размер Галереи не изменяется. Отсюда, если я вручную изменю размер своего браузера даже на один пиксель, макет обновится, и все будет хорошо.

Поэтому я начал искать способы обновить окно просмотра, фактически не изменяя его размер, чтобы Галерея реагировала так, как если бы окно просмотра изменилось. Ниже приведен мой код для переключения моего меню. Я пытаюсь заставить размер документа соответствовать исходному размеру, но даже это не дает результата.

Спасибо за помощь

var documentWidth = $(document).width();
    var documentHeight = $(document).height();
    function hideMenu() {
        $('#User_Menu').hide("slide", { direction: "left" }, 1000, function () {
            showOpenMenu();
            $.cookie('pj-userMenuTab', 'block')
            $(document).width(documentWidth);
        });
    }
    function showOpenMenu() {
        $('#Open_User_Menu').show("slide", { direction: "left" }, 500);
        $.cookie('pj-userMenu', 'none')
    }
    function showMenu() {
        $('#Open_User_Menu').hide("slide", { direction: "left" }, 500, function () {
            hideOpenMenu();
            $.cookie('pj-userMenu', 'block');
        });
    }
    function hideOpenMenu() {
        $('#User_Menu').show("slide", { direction: "left" }, 1000);
        $.cookie('pj-userMenuTab', 'none')
        alert('...' + documentWidth);
        $(document).width(documentWidth);
        alert($(document).width());
    }

person Mark Hollas    schedule 27.07.2012    source источник
comment
Кажется, что-то меняется в событии resize (из window).   -  person Inkbug    schedule 27.07.2012
comment
да, я думаю, что плагин Galleria использует это. Я надеялся создать обновление области просмотра, чтобы вызвать это событие.   -  person Mark Hollas    schedule 27.07.2012
comment
Если это так, попробуйте добавить $(window).trigger("resize") к своим функциям открытия/закрытия.   -  person Inkbug    schedule 27.07.2012
comment
Спасибо. На самом деле я просто просматривал галерею js и увидел именно эту функцию, поэтому я показал ее, и она сработала.   -  person Mark Hollas    schedule 27.07.2012
comment
Я разместил это как ответ, так как он решил вашу проблему.   -  person Inkbug    schedule 27.07.2012


Ответы (1)


Согласно комментариям, необходимо было вызвать событие resize, чтобы размер плагина Galleria изменился.

Следующий код (при добавлении к функциям открытия/закрытия) должен работать:

$(window).trigger("resize");
person Inkbug    schedule 27.07.2012