Официальный Форум технической поддержки сервиса ForumBB

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

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


Вы здесь » Официальный Форум технической поддержки сервиса ForumBB » Корзина » Сворачивание категорий. Вопросы.


Сворачивание категорий. Вопросы.

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

1

Почему-то ни один из предложенных и найденных мною скриптов не работает.
Сейчас перепробовала уже все найденные скрипты. Понравился

Код:
<!--Cворачивание категорией 1-->
<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: http://s53.radikal.ru/i142/1112/5f/c636f44f2a16.png',
close: http://s017.radikal.ru/i441/1112/2a/74b096756730.png'
}
</script>
<!--Cворачивание категорией 2-->
<script type="text/javascript">
$('#pun-main div.category > h2 div.catleft').after('<span class="offctgr" style="float: right;"><img src="'+aimg.open+'" title="показать/cкрыть" /></span>');
$('#pun-main div.category').each(function (i) {
var ctgId=$(this).attr('id');
if(getcookie(ctgId)=='close'){
$('#'+ctgId+' > div.container').css({display: 'none'});
$('#'+ctgId+' > h2 > .offctgr img').attr("src",aimg.close)}
});
$('span.offctgr').click(function(){
var cat=$(this).parents('div.category').attr('id');
$(this).parents('div.category').children('div.container').toggle('slow');
var s = $(this).find("img").attr("src") == aimg.open ? aimg.close : aimg.open;
$(this).find("img").attr("src",s)
var catc = getcookie(cat);
catc = catc == 'close' ? 'open' : 'close';
setcookie(cat,catc,3600*24*30*1000);
return false; });
</script>

По непонятной мне причине на работает. Вставляла в низ, тестировала на форуме http://blackguard.forumbb.ru

Пы.Сы. Если первую часть ставить вверх, а вторую вниз тоже ничего не дает.

Отредактировано rps (07.12.2011 20:39:32)

0

2

Новое сворачивание категорий: все браузеры + сохранение тоже не работает.

заработало

в 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: 'http://savepic.ru/2290084.png',
    close: 'http://savepic.ru/2275748.png'

    }
    </script>

в хтмл-низ ставить это

Код:
    <script type="text/javascript"><!--Cворачивание категорией Ч2-->
    $('#pun-main div.category > h2 div.catleft').after('<span class="offctgr" style="float: right;"><img src="'+aimg.open+'" title="показать/cкрыть" /></span>');
    $('#pun-main div.category').each(function (i) {
        var ctgId=$(this).attr('id');
             if(getcookie(ctgId)=='close'){
       $('#'+ctgId+' > div.container').css({display: 'none'});
       $('#'+ctgId+' > h2 > .offctgr img').attr("src",aimg.close)}
    });

    $('span.offctgr').click(function(){
    var cat=$(this).parents('div.category').attr('id');
    $(this).parents('div.category').children('div.container').toggle('slow');
    var s = $(this).find("img").attr("src") == aimg.open ? aimg.close : aimg.open;
    $(this).find("img").attr("src",s)
    var catc = getcookie(cat);
    catc = catc == 'close' ? 'open' : 'close';
    setcookie(cat,catc,3600*24*30*1000);
          return false; });
    </script>

Вопрос остается - почему не работает самый верхний скрипт?

Отредактировано rps (07.12.2011 20:40:13)

0

3

Талина
Потому, что надо читать инструкцию к скрипту прежде, чем его ставить. Там сказано, что первая часть идёт в ХТМЛ-верх, вторая - в ХТМЛ-низ.
[mod]И ещё: устное замечание, пользуйтесь тегами кода.[/mod]

0

4

За что замечание? Во-первых, там не сказано, что идет в верх, а что в низ. А во-вторых, я отдельной строкой прописала в своём вопросе, что при разбиении и вставке первой части в html-верх,  а второй части в html-низ, результата всё равно никакого. Не работает первый код (который в самом первом посте вопроса). Вопрос остаётся - почему? И по поводу устного замечания - объясните, пожалуйста, как этим самым тегом кода пользоваться - пробовала - не получается, опыта своего пока ноль.

Пы.Сы. Вот прям сейчас не поленилась и опять протестила на форуме http://blackguard.forumbb.ru/ первый скрипт, разбив его на две части - html-верх и html-низ. Результат нулевой. Я понимаю, конечно, что уже запустился другой скрипт, но я пытаюсь понять почему не работает этот, в чем в нём ошибка, чтобы впредь подобные ошибки устранять самостоятельно.
Пы.Сы.Сы. "сворачивание категорий 1" поставила в верх, а "сворачивание категорий 2" поставила в низ.
Если нужен доступ к админке этого форума - создам тестовый аккаунт.

Отредактировано Талина (09.12.2011 14:39:56)

0

5

Да, и тогда уж заодно, скажите, пожалуйста, почему не работает скрипт (вроде бы теперь с тегом кода).

Код:
 <SCRIPT LANGUAGE="JavaScript1.2">
<!-- Begin
var no = 25;
var speed = 10;
var snowflake = "http://s017.radikal.ru/i405/1112/71/e84026403622.gif";

var ns4up = (document.layers) ? 1 : 0; // browser sniffer
var ie4up = (document.all) ? 1 : 0;
var dx, xp, yp; // coordinate and position variables
var am, stx, sty; // amplitude and step variables
var i, doc_width = 800, doc_height = 600;
if (ns4up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();
for (i = 0; i < no; ++ i) {
dx[i] = 0; // set coordinate variables
xp[i] = Math.random()*(doc_width-50); // set position variables
yp[i] = Math.random()*doc_height;
am[i] = Math.random()*20; // set amplitude variables
stx[i] = 0.02 + Math.random()/10; // set step variables
sty[i] = 0.7 + Math.random(); // set step variables
if (ns4up) { // set layers
if (i == 0) {
document.write("<layer name=\"dot"+ i +"\" left=\"15\" ");
document.write("top=\"15\" visibility=\"show\"><img src=\"");
document.write(snowflake + "\" border=\"0\"></layer>");
} else {
document.write("<layer name=\"dot"+ i +"\" left=\"15\" ");
document.write("top=\"15\" visibility=\"show\"><img src=\"");
document.write(snowflake + "\" border=\"0\"></layer>");
}
} else if (ie4up) {
if (i == 0) {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");
document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");
document.write("visible; TOP: 15px; LEFT: 15px;\"><img src=\"");
document.write(snowflake + "\" border=\"0\"></div>");
} else {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");
document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");
document.write("visible; TOP: 15px; LEFT: 15px;\"><img src=\"");
document.write(snowflake + "\" border=\"0\"></div>");
}
}
}
function snowNS() { // Netscape main animation function
for (i = 0; i < no; ++ i) { // iterate for every dot
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = self.innerWidth;
doc_height = self.innerHeight;
}
dx[i] += stx[i];
document.layers["dot"+i].top = yp[i];
document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout("snowNS()", speed);
}
function snowIE() { // IE main animation function
for (i = 0; i < no; ++ i) { // iterate for every dot
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
dx[i] += stx[i];
document.all["dot"+i].style.pixelTop = yp[i];
document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout("snowIE()", speed);
}
if (ns4up) {
snowNS();
} else if (ie4up) {
snowIE();
}
// End -->
</script>

Вставила в  html-верх - не работает, в html-низ - тоже не работает. Может что не так делаю или не туда вставляю?

Отредактировано Талина (09.12.2011 14:54:16)

0

6

Талина
Могу ошибаться, но, по-моему, Ваш последний скрипт срабатывает только в Интернет эксплорер. Если другой браузер - могут быть проблемы.

0

7

brener
Ну сейчас IE я тоже увидела. Но это единственный такой скрипт, найденный мной на этом форуме. Если есть еще и я не нашла, помогите с поиском. Потому как нужен не только ослик, но и мозила с оперой.

0

8

Знаете, как можно сделать? В сети валяется куча сценариев снежинок в виде файлов с расширением *.js (просто в поисковик "скрипт падающие снежинки" забейте, куча вывалится).
Это сценарии JavaScript. Этот файл надо скачать (например, отсюда) и залить его на форум через Администрирование-файлы. ОБРАТИТЕ ВНИМАНИЕ, что ссылка у меня на архив, а заливать нужно уже разархивированный файл.

А потом в HTML-верх поставить строку

Код:
<script type="text/javascript" src="ССЫЛКА НА ЗАКАЧАННЫЙ ФАЙЛ"></script>

Должно сработать. У меня сработало, по крайней мере. :)

Тот сценарий, ссылку на который я дал, не использует картинок. Снежинки в нем - это символы (*) разных размеров. Есть сценарии и с картинками. Они чуть больше подгружают форум.

А можете просто вставить в верх вот этот код:

Код:
<script type="text/javascript" src="http://hostjs-mybb2011.narod.ru/js/snow.js"></script>

Здесь файл сценария уже залит на другой хостинг. Снег отображается в виде точек разной крупности.

Отредактировано brener (12.12.2011 13:32:28)

0

9

Талина написал(а):

Почему-то ни один из предложенных и найденных мною скриптов не работает.
Сейчас перепробовала уже все найденные скрипты. Понравился

<!--Cворачивание категорией 1-->
<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: 'http://s53.radikal.ru/i142/1112/5f/c636f44f2a16.png',
close: 'http://s017.radikal.ru/i441/1112/2a/74b096756730.png'
}
</script>

Не Хватает двух кавычек в верхнем скрипте( выделено красным

0

10

Deff написал(а):

Не Хватает двух кавычек в верхнем скрипте( выделено красным

мда уж... спасибо большое. недоглядела. а чего уже только не перепробовала...

0


Вы здесь » Официальный Форум технической поддержки сервиса ForumBB » Корзина » Сворачивание категорий. Вопросы.