У меня есть панель навигации для языков. Вы можете скрыть его с помощью кнопки jQuery. Но каждый раз, когда вы обновляете страницу, появляется снова навигационная панель.
Как я могу заставить его скрываться после нажатия кнопки "Скрыть", пока вы не нажмете кнопку еще раз, чтобы показать ее.
У меня уже есть функция скрытия и отображения.
jQuery(document).ready(function(){
jQuery('#hideshow').on('click', function(event) {
jQuery('#lang').toggle('show');
debugger
if($('#hideshow').text()=="Hide"){
$('#hideshow').text("Show")
}
});
});
Fiddle (скрипка выглядит не слишком хорошо, но работает)
Кстати, я действительно новичок в JS и jQuery! :)
Чтобы иметь постоянное состояние вашего бара, вам необходимо сохранить это состояние либо в файле cookie, либо в локальном хранилище. Вы можете использовать, например:
Просто используйте cookie.
// if you want to set it for num of days, pass that in.
// Otherwise leave empty and it will be a session cookie.
// and remember to pass in a number for days, not a string
function setCookie(name,value,days) {
var date, expires;
if (days) {
date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
expires = "; expires=" + date.toGMTString();
}else{
expires = "";
}
document.cookie = name + "=" + value + expires + "; path=/";
}
Если вы хотите прочитать файл cookie, включите следующий метод.
function getCookie(name) {
var i, c, arr, cName = name + "=";
arr = document.cookie.split(';');
for(i=0;i < arr.length;i++) {
c = arr[i];
while (c.charAt(0)==' ') {
c = c.substring(1,c.length);
}
if (c.indexOf(cName) == 0) {
return c.substring(cName.length,c.length);
}
}
return '';
}
Чтобы получить и написать в файл cookie, выполните следующие действия:
setCookie('naviSet', true);
Чтобы прочитать файл cookie 'naviSet://вы можете называть его чем угодно.
getCookie('naviSet')
Затем в вашем коде проверьте, установлен ли он. Если нет, запустите свой код THEN, чтобы установить его.
if( getCookie('naviSet') != true){
// run your code
// set your coookie, to whatever value you want. I just happend to use "true"
}
Попробуй это
Используйте плагин COOKIE:
Установить файл cookie
$.cookie("div_status", "hide"); //set hide or show
Получить файл cookie
alert( $.cookie("div_status") ); //then call on page load to get div status
Удалить файл cookie
$.removeCookie("div_status"); //remove if not need