我不知道是否有人可以請求幫助,我使用'https://nnattawat.github.io/slideReveal/'中的jquery.slidereveal.js,如果我手動點擊觸發器打開和關閉菜單,代碼插件本身也能正常工作。jQuery SlideReveal不會顯示onLoad
但是,我會喜歡它默認的頁面加載,無論用戶以前點擊過的任何狀態。
例如,如果他們點擊顯示,然後導航到另一個屏幕,當JS再次加載時,我希望它檢查保存到localStorage的最後狀態,如果它是true,則自動顯示隱藏的面板。
請參閱下面我的代碼:
$(document).ready(function() {
var panelOpen = localStorage.getItem("panelOpen");
if (panelOpen == "true") {
$("#slidermenu-bar").slideReveal("show");
}
});
$(function() {
$("#slidermenu-bar").slideReveal({
push: false,
position: "left",
trigger: $(".handle"),
shown: function (obj) {
localStorage.setItem("panelOpen", true);
obj.find(".handle").html('<span class="glyphicon glyphicon-chevron-left"></span> Open');
},
hidden: function (obj) {
localStorage.setItem("panelOpen", false);
obj.find(".handle").html('<span class="glyphicon glyphicon-chevron-right"></span> Close');
}
});
});
如果任何人都可以幫助,那將是非常讚賞:-)
好吧,我已經試過了。我現在有'if(logoutPanelOpen ==「true」){var slider = $(「#slidermenu-bar」)。slideReveal({push:false,position:「left」}); slider.slideReveal(「show」) ;}'我可以簡單地看到它彈出,然後再次隱藏。如果我使用'if(logoutPanelOpen ==「true」){var slider = $(「#slidermenu-bar」)。slideReveal(); slider.slideReveal(「show」);}'屏幕向右滑動,但手柄和隱藏面板留在他們的位置,直到手柄被點擊並滑出面板,這是非常令人沮喪的LOL – iggyweb
我用一個小'setTimout()'更新了。 ;) –
你遇到了問題,首先,從我所知道的$(document).ready(function(){和$(function(){都是「準備就緒」的塊。首先打開它,然後功能塊在文檔之外準備就緒,再次關閉它。謝謝,現在可以工作了。 – iggyweb