• Страница 1 из 1
  • 1
Скрипты и коды для юкоз - Форум аццкого кодера » Записи участника » remus [7]
Результаты поиска
Дата: Понедельник, 17.10.2011, 22:55 | Сообщение #1 | Тема: Плавное сворачивание / разворачивание блока + куки
remus
Рядовой
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline


Code
$(function() {  
      $('.hideWrap a.hideBtn').each(function(i) {  
          var cookie = getCookie('hideBtn' + i);  
          if (cookie && cookie.indexOf('show') > -1) $(this).toggleClass('show').parents('.hideWrap').find('.hideCont').show();  
      });  
      $('.hideWrap a.hideBtn').click(function() {  
          cont = $(this).parents('.hideWrap').find('.hideCont');  
          $(this).toggleClass('show');  
          cont.slideToggle('normal');  
          var hideBtn = $('.hideWrap a.hideBtn').index($(this)),  
              isShow = $(this).attr('class');  
          setCookie('hideBtn' + hideBtn, isShow, 365);  
          return false;  
      });  
  });

не работает в chrome и ошибка
Code

Problem at line 4 character 53: Expected '{' and instead saw '$'.
if (cookie && cookie.indexOf('show') > -1) $(this).toggleClass('show...


 
Дата: Вторник, 18.10.2011, 10:12 | Сообщение #2 | Тема: Плавное сворачивание / разворачивание блока + куки
remus
Рядовой
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline


Code
$(function() {
        $('.hideWrap a.hideBtn').each(function(i) {
            var cookie = getCookie('hideBtn' + i);
            if (cookie && cookie.indexOf('show') > -1) {
                $(this).toggleClass('show').parents('.hideWrap').find('.hideCont').show();
            }
        });
        $('.hideWrap a.hideBtn').click(function() {
            var cont = $(this).parents('.hideWrap').find('.hideCont');
            $(this).toggleClass('show');
            cont.slideToggle('normal');
            var hideBtn = $('.hideWrap a.hideBtn').index($(this)),
                isShow = $(this).attr('class');
            setCookie('hideBtn' + hideBtn, isShow, 365);
            return false;
        });
});


Cпасибо за ответ, думал не ответят, я сделал как ты сказал и ещё исправил проблему с "});" $(function() { не был закрыт, но всё равно не работает в Chrome, ещё он в Chrome в закрытом виде появляется, а в Firefox хорошо отображаться в открытом. А на счёт кода я его взял из твоего поста #9

А внедрить этот код к основному, точнее отредактировать первый и заменить на этот помоги
Code
(function($) {
      $(".hidden_menu_button").click(function() {
          if ($(".hidden_menu").is(":hidden")) {
              $(".hidden_menu").slideDown("normal");
          } else {
              $(".hidden_menu").slideUp("normal");
          }
      });
})(jQuery);


Сообщение отредактировал remus - Вторник, 18.10.2011, 21:04
 
Дата: Среда, 19.10.2011, 11:59 | Сообщение #3 | Тема: Плавное сворачивание / разворачивание блока + куки
remus
Рядовой
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline


Quote (likbezz)
Ты, часом, не на локале тестишь? в смысле не с жесткого запускаешь?

Да с него biggrin :D biggrin

Code
(function($) {
         $("#hidden_menu_button").click(function() {
             if ($("#hidden_menu").is(":hidden")) {
                 $("#hidden_menu").slideDown("normal");
             } else {
                 $("#hidden_menu").slideUp("normal");
             }
         });
})(jQuery);


да блин я чуть не то кинул, мне надо что бы открывалось по этой системе, вот, а блок у меня не 1 их 16 smile
просто я разобраться не могу в js сколько всего прочитал так и не понял...

------------------

на одном форуме вообще написал парень

Quote (PhoEn-X)

Страшный скрипт... не проще подключить JQuery версию cookie?
Code
http://wd-planet.ucoz.ru/cookie.js


Code
function createCookie() {$.cookie('cookie01', 'cookie01cont');}; // создаем куки с именем cookie01
   $.cookie('cookie01'); // считываем (если они созданы)
   if ($.cookie(cookie01')) {какая нибудь функция}; // если созданы куки cookie01 то выполняется "какая нибудь функция"
   function delCookie() {$.cookie('cookie01', null, {path: '/'});}; // функция удаления куки cookie01


Code
ну и управляем созданием и удалением))
<a onclick="createCookie();">Создать куки</a><a onclick="delCookie();">Удалить куки</a>



Сообщение отредактировал remus - Среда, 19.10.2011, 12:03
 
Дата: Среда, 19.10.2011, 17:30 | Сообщение #4 | Тема: Плавное сворачивание / разворачивание блока + куки
remus
Рядовой
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline


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

Да ты прав мне надо было изменить анимацию при открытие/закрытие блока, что собственно ты и сделал, спасибо!
Quote (likbezz)
Вам типа, нужно сменить тип анимации при открытии/закрытии блока?
Если да, тоже не очень понял, то вот так:

Оказывается всё так просто...
Quote (likbezz)
А именно, строка:
Code
if(cont.is(':hidden')){cont.slideDown('normal');}else{cont.slideUp('normal');};


Я хотел поменять с $.slideToggle(); на $.slideUp();$.slideDown(); я про эти функции читал, но мне функция $.slideToggle(); не нравиться тем что когда много раз нажимаешь на неё, ну допустим большой текст, он будет открывать закрывать, хотя ты уже убрал курсор, а функции $.slideUp();$.slideDown(); не дают так делать...
Quote (likbezz)
Но, вообще-то, функция $.slideToggle(); выполняет тот же код, что и ваш - то бишь, проверяет скрыт ли блок, и, если скрыт - открывает его именно методом $.slideUp();, если же открыть, то закрывает его методом $.slideDown(); ...
Так что, ... так.


Сообщение отредактировал remus - Среда, 19.10.2011, 17:31
 
Дата: Среда, 19.10.2011, 23:48 | Сообщение #5 | Тема: Плавное сворачивание / разворачивание блока + куки
remus
Рядовой
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline


Code
.hideBtn{
          /* img/minus */
}
.hideBtn.close{
          /* img/plus */
}
/* ну и удалил display:none -> hideCont */


что то не дописал я, что бы изначально в открытом виде блоки были...
Code
$(document).ready(function() {
          $('.hideWrap .hideBtn').each(function(i) {
              var cookie = getCookie('hideBtn' + i);
              if (cookie && cookie.indexOf('close') > -1) {
                  $(this).toggleClass('close').siblings('.hideCont').hide();
              }
          });

          $('.hideWrap .hideBtn').click(function() {
              var cont = $(this).siblings('.hideCont');
              $(this).toggleClass('close');
              if (cont.is(':hidden')) {
                  cont.slideDown('normal');
              } else {
                  cont.slideUp('normal');
              }
              var hideBtn = $('.hideWrap .hideBtn').index($(this)),
                  isShow = $(this).attr('class');
              setCookie('hideBtn' + hideBtn, isShow, 365);
              return false;
          });
});


Сообщение отредактировал remus - Среда, 19.10.2011, 23:51
 
Дата: Пятница, 21.10.2011, 22:40 | Сообщение #6 | Тема: Плавное сворачивание / разворачивание блока + куки
remus
Рядовой
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline


исправил теперь в открытом виде и сохраняет.
Code
$(document).ready(function() {
           $('.hideWrap .hideBtn').each(function(i) {
               var cookie = getCookie('hideBtn' + i);
               if (cookie && cookie.indexOf('close') != -1) {
                   $(this).toggleClass('close').siblings('.hideCont').hide();
               }
           });

           $('.hideWrap .hideBtn').click(function() {
               var cont = $(this).siblings('.hideCont');
               $(this).toggleClass('close');
               if (cont.is(':hidden')) {
                   cont.slideDown('normal');
               } else {
                   cont.slideUp('normal');
               }
               var hideBtn = $('.hideWrap .hideBtn').index($(this)),
                   isShow = $(this).attr('class');
               setCookie('hideBtn' + hideBtn, isShow, 365);
               return false;
           });
});


но на див работает, а на таблице нет! почему?
Code
<div class="hideWrap">
     <table border="0" cellpadding="0" cellspacing="0">
         <tr>
             <td>
                 <a class="hideBtn" href="javascript://">открыть/закрыть</a>
             </td>
         </tr>
         <tr>
             <td>
                 <div class="hideCont">
                     текст
                 </div>
             </td>
         </tr>
     </table>
</div>


 
Дата: Пятница, 21.10.2011, 23:06 | Сообщение #7 | Тема: Плавное сворачивание / разворачивание блока + куки
remus
Рядовой
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline


получается так ?

Code
$(document).ready(function() {
     $('.hideWrap .hideBtn').each(function(i) {
         var cookie = getCookie('hideBtn' + i);
         if (cookie && cookie.indexOf('close') != -1) {
             $(this).toggleClass('close').parents('.hideWrap').find('.hideCont').hide();
         }
     });
     $('.hideWrap .hideBtn').click(function() {
         var cont = $(this).parents('.hideWrap').find('.hideCont');
         $(this).toggleClass('close');
         if (cont.is(':hidden')) {
             cont.slideDown('normal');
         } else {
             cont.slideUp('normal');
         }
         var hideBtn = $('.hideWrap .hideBtn').index($(this)),
             isShow = $(this).attr('class');
         setCookie('hideBtn' + hideBtn, isShow, 365);
         return false;
     });
});


Сообщение отредактировал remus - Пятница, 21.10.2011, 23:10
 
Скрипты и коды для юкоз - Форум аццкого кодера » Записи участника » remus [7]
  • Страница 1 из 1
  • 1
Поиск:


Мобильная версия