2012-07-27 35 views
1

我遇到了佈局問題,並且希望得到一些見解。jquery更新視口?

我在左側有一個打開和摺疊的菜單面板,右側有一個設置爲響應模式的Galleria,這意味着如果窗口大小發生變化,它將調整大小。

我打算實現的目標是當我的菜單面板崩潰時,我希望響應式Galleria調整大小,反之亦然。

現在,如果面板開始處於摺疊位置並展開,文檔寬度會增加菜單面板的寬度,並且Galleria不會調整大小。從這裏如果我手動調整我的瀏覽器甚至一個像素的佈局刷新,一切都很好。

因此,我開始尋找可以更新視口的方法,而實際上並未改變尺寸,以至於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()); 
    } 
+0

這看起來似乎是在('的window')的'resize'事件發生變化。 – Inkbug 2012-07-27 07:52:19

+0

是的我認爲Galleria插件正在使用它。我希望創建一個視口更新以觸發該事件 – 2012-07-27 08:10:51

+1

如果是這樣,那麼嘗試在您的打開/關閉功能中添加一個'$(window).trigger(「resize」)'。 – Inkbug 2012-07-27 08:14:16

回答

3

%的意見,什麼是必然的,觸發事件resize這樣的Galleria插件將調整。

下面的代碼(在添加到打開/關閉功能)應該工作:

$(window).trigger("resize");