Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.10.2009, 09:46
Илья Query
 
Сообщений: n/a

JQuery и Cookie
Всем доброго времени суток!

Не могу разобраться с JQuerty и cookie. Буду признателен за помощь.

<script>
jQuery(function() {
$("#hideshow").toggle(function() {
$(".second_inner").animate({"width": 700}, "fast");
}, function() {
$(".second_inner").animate({"width": 500}, "fast");
});
});
</script>


Суть:

0. Есть блок шириной = 500px;
1. Кликаем на кнопку 1 раз; // $("#hideshow").toggle(function() {
2. Ширина блока меняется с 500px до 700px; // $(".second_inner").animate({"width": 700}, "fast");
3. Обновляем страницу;
4. Ширина блока теперь = 700px.

Т.е. проще говоря необходимо чтобы при перезагрузке страницы запоминалась установленная ширина блока (в зависимости от того, что накликали). Добавьте пожалуйста сюда cookie.

Заранее благодарен за помощь.

Последний раз редактировалось Octane, 17.10.2009 в 15:51. Причина: используйте теги [html] и [js] для оформления кода
Ответить с цитированием
  #2 (permalink)  
Старый 20.10.2009, 16:18
Аспирант
Отправить личное сообщение для mcpro Посмотреть профиль Найти все сообщения от mcpro
 
Регистрация: 07.10.2009
Сообщений: 30

Думаю вот это тебе должно помочь
http://plugins.jquery.com/project/cookie
http://www.linkexchanger.su/2008/42.html
Ответить с цитированием
  #3 (permalink)  
Старый 21.10.2009, 05:05
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

а что это за блок? Может можно сделать, чтобы у пользователя сразу была адекватная ширина?
Ответить с цитированием
  #4 (permalink)  
Старый 26.10.2009, 19:20
Илья JQuery
 
Сообщений: n/a

Проблемка с JQuery
Сообщение от x-yuri Посмотреть сообщение
а что это за блок? Может можно сделать, чтобы у пользователя сразу была адекватная ширина?
Да дело не в ширине. Я просто на примере хочу понять как поставить куки для сайта. Из статьи http://www.linkexchanger.su/2008/42.html не всё понятно, может подкинете несколько примеров? Буду признателен.
Ответить с цитированием
  #5 (permalink)  
Старый 27.10.2009, 05:32
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

что непонятно из статьи?
Ответить с цитированием
  #6 (permalink)  
Старый 27.10.2009, 07:29
Илья JQuery
 
Сообщений: n/a

Не работает пример
Цитата:
Что непонятно из статьи?
2x-yuri: Не могу разобраться по какой причине не работает код.

Вот ссылка http://banki72.ru/banks/. Для кнопок скрыть / отобразить не работают cookie.

<script>
jQuery(function() {

	$.cookie("mycookie"); // получаем куки

	$("#hide_show_left").toggle(function() {
			$("#hide_show_left").text(' отобразить');
			$("#hide_show_left_img").attr({src:"/images/right.gif"});
			$(".first").hide("fast");
			$(".second_inner").animate({"width": 702}, "slow");
			$.cookie("mycookie", $(".second_inner").css('display', 'none')); // устанавливаем куки
	}, function() {
			$("#hide_show_left").text(' скрыть');
			$("#hide_show_left_img").attr({src:"/images/left.gif"});
			$(".second_inner").animate({"width": 519}, "fast");
			$(".first").show("slow");
			$.cookie("mycookie", null); // удаляем куки
	});
});
</script>
Ответить с цитированием
  #7 (permalink)  
Старый 27.10.2009, 08:46
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

а теперь пишем
$(".second_inner").animate({"width": 702}, "slow");
console.log($(".second_inner").css('display', 'none'));
            $.cookie("mycookie", $(".second_inner").css('display', 'none')); // устанавливаем куки
    }, function() {

и смотрим в консоль firebug'а
что ты в куки записать хочешь?
Ответить с цитированием
  #8 (permalink)  
Старый 27.10.2009, 09:54
Илья JQuery
 
Сообщений: n/a

Разбор примера
Нашёл ошибку, неверно был указан класс:
//вместо
$.cookie("mycookie", $(".[B]second_inner[/B]").css('display', 'none'));
//должно быть
$.cookie("mycookie", $(".[B]first[/B]").css('display', 'none'));

// т.е. код должен выглядеть вот так:

jQuery(function() {
 
    $.cookie("mycookie"); // получаем куки
 
    $("#hide_show_left").toggle(function() {
            $("#hide_show_left").text(' отобразить');
            $("#hide_show_left_img").attr({src:"/images/right.gif"});
            $(".first").hide("fast");
            $(".second_inner").animate({"width": 702}, "slow");
            $.cookie("mycookie", $(".[B]first[/B]").css('display', 'none')); // устанавливаем куки
    }, function() {
            $("#hide_show_left").text(' скрыть');
            $("#hide_show_left_img").attr({src:"/images/left.gif"});
            $(".second_inner").animate({"width": 519}, "fast");
            $(".first").show("slow");
            $.cookie("mycookie", null); // удаляем куки
    });
});


Но к сожалению, всё равно не работает.

//а теперь пишем
$(".second_inner").animate({"width": 702}, "slow");
[B]console.log($(".[B]first[/B]").css('display', 'none'));[/B]
            $.cookie("mycookie", $(".[B]first[/B]").css('display', 'none')); // устанавливаем куки
    }, function() {

Под рукой firebug к сожалению нет, вечером попробую.

Цитата:
что ты в куки записать хочешь?
2x-yuri: Зафиксировать:
  • Блок (.first). Скрыт (none) или отображен (block);
  • Размер изменённого блока (.second_inner). Width: '702' или '519'.
Ответить с цитированием
  #9 (permalink)  
Старый 27.10.2009, 10:17
Новичок на форуме
Отправить личное сообщение для Илья JQuery Посмотреть профиль Найти все сообщения от Илья JQuery
 
Регистрация: 27.10.2009
Сообщений: 5

Какое-то размытое сообщение получилось выше. Попробую исправится.

Исходный код:
jQuery(function() {
    $.cookie("mycookie"); // Получаем куки
    $("#hide_show_left").toggle(function() {
            $("#hide_show_left").text(' отобразить');
            $("#hide_show_left_img").attr({src:"/images/right.gif"});
            $(".first").hide("fast");
            $(".second_inner").animate({"width": 702}, "slow");
            $.cookie("mycookie", $(".first").css('display', 'none')); // Устанавливаем куки
    }, function() {
            $("#hide_show_left").text(' скрыть');
            $("#hide_show_left_img").attr({src:"/images/left.gif"});
            $(".second_inner").animate({"width": 519}, "fast");
            $(".first").show("slow");
            $.cookie("mycookie", null); // Удаляем куки
    });
});


Не получается с помощью cookie зафиксировать:
  • Блок .first. Скрыт (none) или отображен (block);
  • Размер изменённого блока .second_inner. Ширина (width): 702px или 519px.
Ответить с цитированием
  #10 (permalink)  
Старый 27.10.2009, 19:29
Новичок на форуме
Отправить личное сообщение для Илья JQuery Посмотреть профиль Найти все сообщения от Илья JQuery
 
Регистрация: 27.10.2009
Сообщений: 5

Вот что в отразилось в консоли:

Код:
Object length=1 0=div.colum prevObject=Object jquery=1.2.3
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery для загрузки страницы в <div> Dr.Holerik jQuery 12 11.10.2016 17:36
jQuery - нужно пояснение, понятное чайнику Zilog jQuery 0 06.09.2009 02:51
Jquery, Dynatree и JSON antirek jQuery 6 01.09.2009 15:00
Как правильно подгрузить jQuery Siton jQuery 4 15.06.2009 09:54
jquery cookie nemo Библиотеки/Тулкиты/Фреймворки 12 25.05.2009 03:59