Меню сайта
Категории раздела
Новости кибер-спорта [320]
Мини-чат
Наш опрос
Какую ОС вы предпочитаете?
Всего ответов: 27
Главная » 2010 » Январь » 30 » Блоки как вконтакте v1.0
13:01
Блоки как вконтакте v1.0

Пример: http://megafile.mksat.net/

Назначение: Добавляет вероятность пользователям сворачивать, или разворачивать, блоки на сайте, можно прикрутить под абсолютно любые блоки! от боковых до похожих новостей и всё такое! на что у вас хватит фантастики!)))
Каждый юзер сам себе выбирает какие ему блоки сворачивать, какие оставлять развёрнутыми.
После очередной загрузки, перезагрузки страниц сайта блоки остаются в последнем выбранном пользоватедвам варианте, то-есть запоминается их последнее состояние.

Технология: основан на яваскрипт, данные записываются в куки пользователю
Недостатки:
- блоки сворачиваются только после загрузки страницы(яваскрипт отрабатывается последним)
- содержимое блоков загружается в любом случае - свёрнут он или развёрнут.

Создаём файл: /templates/ваш_скин/js/block.js
с содержимым:
function setCookie(name, value, expiredays, path, domain, secure) {
    if (expiredays) {
        var exdate=new Date();
        exdate.setDate(exdate.getDate()+expiredays);
        var expires = exdate.toGMTString();
    }
    document.cookie = name + \"=\" + escape(value) +
    ((expiredays) ? \"; expires=\" + expires : \"\") +
    ((path) ? \"; path=\" + path : \"\") +
    ((domain) ? \"; domain=\" + domain : \"\") +
    ((secure) ? \"; secure\" : \"\");
}
function getCookie(name) {
    var cookie = \" \" + document.cookie;
    var search = \" \" + name + \"=\";
    var setStr = null;
    var offset = 0;
    var end = 0;
    if (cookie.length > 0) {
        offset = cookie.indexOf(search);
        if (offset != -1) {
            offset += search.length;
            end = cookie.indexOf(\";\", offset)
            if (end == -1) {
                end = cookie.length;
            }
            setStr = unescape(cookie.substring(offset, end));
        }
    }
    return setStr;
}
function block_now(id) {
    if(getCookie(id) == 1) {
        display = \'none\';
        setCookie(id, 0, 90, \"/\");
    } else {
        display = \'\';
        setCookie(id, 1, 90, \"/\");
    }
    document.getElementById(id).style.display = display;
}
function block_start(id) {
    var cookie_stat = getCookie(id);
    if((cookie_stat == 1) || (!cookie_stat)){
        display = \'\';
    } else {
        display = \'none\';
    }
    document.getElementById(id).style.display = display;
}

Файл: main.tpl
Найти:
</head>

Добавить выше:
<script type=\"text/javascript\" src=\"/templates/Simple/js/block.js\"></script>
<script type=\"text/javascript\">
function block_search(){
    block_start(\"blok_1\");
    block_start(\"blok_2\");
//    block_start(\"blok_3\");
//    block_start(\"blok_4\");
// добавляет столько вызовов функций, как много у вас будет блоков
}
</script>

найти:
<body>

заменить на:
<body onLoad=\"block_search()\">

а теперь собственно правим свои блоки по типу:
<table>
<tr onClick=\"block_now(\'blok_1\')\" style=\"cursor:pointer;\">
    <th>Заголовок блока</th>
</tr>
<tr id=\"blok_1\" style=\"\">
    <td>Содержимое блока</td>
</tr>
</table>

Категория: Новости кибер-спорта | Просмотров: 169 | Добавил: 2qq | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Воскресенье
17.11.2024
23:49


Реклама
Друзья сайта
XXX


Новое на форуме
Статистика
» Зарег. на сайте
Всего: 637
Новых за месяц: 0
Новых за неделю: 0
Новых вчера: 0
Новых сегодня: 0
» Из них
Администраторов: 1
Модераторов: 1
Проверенных: 11
Обычных юзеров: 620
» Из них
Парней: 619
Девушек: 17


Онлайн всего: 39
Гостей: 39
Пользователей: 0

Сегодня были
Копилка



© Theysoft.ru ©2010
При копировании ссылка на первоисточник обязательна.
Авторы проекта не несут ответственности за содержание рекламных материалов и файлов, размещенных на сторонних серверах.
SiteMap.xml | ForumSiteMap.xml | Хостинг от uCoz