• Страница 1 из 1
  • 1
Сворачивание Блоков с сохранением в Cookies
-=SToRM=-Дата: Суббота, 16.04.2011, 17:20 | Сообщение # 1
" Мы баним с улыбкой™ "
Логин: -=SToRM=-
Имя: -=SToRM=-
Сообщений: 256
Награды: 3
Репутация: 235
Замечания:
Данный скрипт реализует сворачивание блоков с сохранением в cookies (примерно как на МС).

Установка:

Ставим в конец BODY этот код:

Code
for ( var i = 0; i < nodes.length; i++ ) {  
     if ( new RegExp('\\b' + imgclass + '\\b').test(nodes[i].className) ) {  
      tmp.push(nodes[i]);  
     }  
    }  
    return tmp;  
   }  
}  

function Next(element) {  
   var next = element;  
   while (next = next.nextSibling)  
    if ("innerHTML" in next)  
     return next;  
   return element;  
}  

function getCookie(a){var b=document.cookie.match(new RegExp("(?:^|; )"+a.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,"\\$1")+"=([^;]*)"));return b?decodeURIComponent(b[1]):undefined}function setCookie(b,f,c){c=c||{};var i=c.expires;if(typeof i=="number"&&i){var h=new Date();h.setTime(h.getTime()+i*1000);i=c.expires=h}if(i&&i.toUTCString){c.expires=i.toUTCString()}f=encodeURIComponent(f);var a=b+"="+f;for(var e in c){a+="; "+e;var g=c[e];if(g!==true){a+="="+g}}document.cookie=a}  
   var nodes = getElementsByClassName(classname);  
   for (var i = 0; i < nodes.length; i++) {  
    var toggler = document.createElement("A");  
    toggler.href = "javascript://";  
    toggler.id = "toggler" + i;  
    toggler.innerHTML = getCookie("toggler" + i) == "hide" ? "+" : "-";  
    toggler.onclick = function () {  
     Next(this.parentNode).style.display = getCookie(this.id) == "hide" ? "" : "none";  
     setCookie(this.id, getCookie(this.id) == "hide" ? "show" : "hide", {  
      expires: new Date("01 Jan 2020")  
     });  
     this.innerHTML = getCookie(this.id) == "hide" ? "+" : "-";  
    };  
    Next(nodes[i]).style.display = getCookie("toggler" + i) == "hide" ? "none" : "";  
    nodes[i].appendChild(toggler);  
   }  
}  

Switchable("header");  
</script>

Внизу расположен вызов Switchable("header"); — так вот, header — это класс элемента, содержащий заголовок блока. Проще говоря, все блоки, к которым нужно применить этот скрипт, должны иметь такую структуру:

Code
<div class='header'>  
Заголовок  
</div>  
<div>  
Содержимое  
</div>

Т.е. сначала идёт элемент с заголовком, а сразу за ним — элемент с содержимым.

Автор — $USERNAME$.



Реклама платная, подробности в ЛС
-=Хорошая графика недорого=-
  • Страница 1 из 1
  • 1
Поиск:

Статистика Форума
Лучшие пользователи
Уважаемые пользователи
Популярные темы
Недавно обновленные темы
LaiNeR Постов [ 3127 ]
Staistesap Постов [ 1545 ]
z1M Постов [ 1488 ]
Mooxyrep Постов [ 1145 ]
Pooniacact Постов [ 986 ]
KoreshoK Постов [ 644 ]
LonS Постов [ 585 ]
BIG_BOSS Постов [ 572 ]
DoZa Постов [ 564 ]
shooter Постов [ 468 ]
LonS Репутация [ 546 ]
LaiNeR Репутация [ 519 ]
Smofee Репутация [ 477 ]
СнAйПер Репутация [ 436 ]
MedeX Репутация [ 412 ]
TiPSy Репутация [ 300 ]
bleff Репутация [ 279 ]
-=SToRM=- Репутация [ 235 ]
A6c3Ht^ Репутация [ 225 ]
NoRD Репутация [ 210 ]
Общение [ 1309 ]
Считаем до 1 000 [ 664 ]
Поговорим обо всем :) (девушки, машины, личная жизнь и тд) [ 369 ]
Афоризмы (Не комментируйте) [ 301 ]
Играем в СЛОВА [ 187 ]
Конкурс "Угадай возраст". [ 183 ]
Конкурс "Угадай автомобиль" [ 110 ]
Предложения по сайту [ 97 ]
Набивка постов [ 80 ]
Обломай товарища [ 75 ]
source-boost.ru | Мониторинг сервера CSS v34 [ 0 ]
source-boost.ru | Мониторинг сервера CSS v34 [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Swatik [ 1 ]

Хостинг от uCoz | sitemap.xml | sitemap-forum.xml | sitemap-shop.xml | urllist.txt | |
PR-CY.ru