Техническая поддержка

Объявление

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Техническая поддержка » Скрипты » Cкрипт сворачивания категорий


Cкрипт сворачивания категорий

Сообщений 1 страница 4 из 4

1

Zebra
Cкрипт сворачивания категорий.

<script type="text/javascript">

function findCat()
{
var ni=1
for (ni=1; ni<=5; ni++)
{var idx="pun-category"+ni
var im="image"+ni
document.getElementById(idx).getElementsByTagName("h2")[0].innerHTML
if (document.cookie.indexOf("category")!=-1)
{var cook1=document.cookie.substr(document.cookie.indexOf("category"))
var cook=cook1.substr((cook1.indexOf(ni)+String(ni).length), 2)
if (cook=="op")
{document.getElementById(idx).getElementsByTagName("table")[0].style.display="block"
var pic="http://uploads.ru/images/k/karpoff/up.gif"
var tit="Скрыть"
}
else if (cook=="cl")
{document.getElementById(idx).getElementsByTagName("table")[0].style.display="none"
var pic="http://uploads.ru/images/k/karpoff/down.gif"
var tit="Показать"
}}
else if (document.cookie.indexOf("category")==-1)
{document.getElementById(idx).getElementsByTagName("table")[0].style.display="block"
var pic="http://uploads.ru/images/k/karpoff/up.gif"
var tit="Скрыть"
}
document.getElementById(idx).getElementsByTagName("h2")[0].innerHTML+="<div align='right'>"+"<img src='"+pic+"' "+"id='"+im+"' "+"style='cursor: hand;'"+"title='"+tit+"' "+"onclick='changeCat("+ni+")' />"+"</div>"}
}
if (document.title.indexOf(" - Форум")!=-1)
{findCat()
window.onunload=saveCooks}

function changeCat(ru)
{var tb="pun-category"+ru
var img="image"+ru
if (document.getElementById(tb).getElementsByTagName("table")[0].style.display!="none")
{document.getElementById(tb).getElementsByTagName("table")[0].style.display="none"
document.getElementById(img).src="http://uploads.ru/images/k/karpoff/down.gif"}
else
{document.getElementById(tb).getElementsByTagName("table")[0].style.display="block"
document.getElementById(img).src="http://uploads.ru/images/k/karpoff/up.gif"}
}

function saveCooks()
{
var sample="category="
var vi=1
for (vi=1; vi<=5; vi++)
{var ct="pun-category"+vi
if (document.getElementById(ct).getElementsByTagName("table")[0].style.display!="none")
{sample+=vi+"op"}
else if (document.getElementById(ct).getElementsByTagName("table")[0].style.display=="none")
{sample+=vi+"cl"}}
var day=new Date()
day.setDate(day.getDate()+365)
sample+=";expires="+day.toGMTString()
document.cookie=sample}

</script>

Вместо жирной пятерки (ОБРАТИТЕ ВНИМАНИЕ, ЧТО В ДВУХ МЕСТАХ) - количество категорий у вас
Вместо ссылки курсивом - ссылка на картинку Скрыть
Вместо Ссылки подчеркнутой - ссылка на картинку Открыть.

0

2

У меня не получается.

0

3

Новое сворачивание категорий
mkusher
Устанавливать в HTML-верх:

<script type="text/javascript">
//cookies
function setcookie(a,b,c) {if(c){var d = new Date();d.setTime(d.getTime()+c);}if(a && b) document.cookie = a+'='+b+(c ? '; expires='+d.toUTCString() : '');else return false;}
function getcookie(a) {var b = new RegExp(a+'=([^;]){1,}');var c = b.exec(document.cookie);if(c) c = c[0].split('=');else return false;return c[1] ? c[1] : false;}
var aimg = {
open: '<img src="картинка открытого блока" border="0" />',
close: '<img src="картинка закрытого блока" border="0" />'
}
function categorytoggle(el){
var cat = $(el).parents('div.category');
cat.children('div.container').toggle('slow');
el.innerHTML = el.innerHTML == aimg.open ? aimg.close : aimg.open;
var catc = getcookie(cat.attr('id'));
catc = catc == 'close' ? 'open' : 'close';
setcookie(cat.attr('id'),catc,3600*24*30*1000);
}
</script>

Эту часть устанавливать в HTML-низ:

Код:
<script type="text/javascript">
$('#pun-main div.category > h2 div.catleft').after('<a href="#" onclick="categorytoggle(this); return false;" style="float: right;">'+aimg.open+'</a>');
for(var i=1;i<=$('#pun-main div.category').length;i++)
    if(getcookie('pun-category'+i)=='close'){
	$('#pun-category'+i+' > div.container').css({display: 'none'});
	$('#pun-category'+i+' > h2 > a').html(aimg.close)
}
</script>

0

4

Айрин написал(а):

<script type="text/javascript">
//cookies
function setcookie(a,b,c) {if(c){var d = new Date();d.setTime(d.getTime()+c);}if(a && b) document.cookie = a+'='+b+(c ? '; expires='+d.toUTCString() : '');else return false;}
function getcookie(a) {var b = new RegExp(a+'=([^;]){1,}');var c = b.exec(document.cookie);if(c) c = c[0].split('=');else return false;return c[1] ? c[1] : false;}
var aimg = {
open: '<img src="картинка открытого блока" border="0" />',
close: '<img src="картинка закрытого блока" border="0" />'
}
function categorytoggle(el){
var cat = $(el).parents('div.category');
cat.children('div.container').toggle('slow');
el.innerHTML = el.innerHTML == aimg.open ? aimg.close : aimg.open;
var catc = getcookie(cat.attr('id'));
catc = catc == 'close' ? 'open' : 'close';
setcookie(cat.attr('id'),catc,3600*24*30*1000);
}
</script>

Айрин написал(а):

<script type="text/javascript">
$('#pun-main div.category > h2 div.catleft').after('<a href="#" onclick="categorytoggle(this); return false;" style="float: right;">'+aimg.open+'</a>');
for(var i=1;i<=$('#pun-main div.category').length;i++)
    if(getcookie('pun-category'+i)=='close'){
$('#pun-category'+i+' > div.container').css({display: 'none'});
$('#pun-category'+i+' > h2 > a').html(aimg.close)
}
</script>

Оооо большое спасибо все работает неужеи...

0


Вы здесь » Техническая поддержка » Скрипты » Cкрипт сворачивания категорий