Перейти к содержимому


Партнерская программа Expressrxsales

Спойлер для DLE с запоминанием

#1 stoptest

stoptest
  • Пользователь
  • 7 сообщений
  • Репутация: 0
0

Отправлено 03 Ноябрь 2012 - 12:09

Нашел в сети спойлер, всё работает как надо но код слишком большой для одного спойлера. код нужно использовать на всех страницах (в main.tpl)
Может есть какие варианты по проще. Главное чтоб было запоминание в куках после перезагрузки страницы.

<a href=" id="tit1" > Название </a>
	 <div style="display:none;" id="con1">
	
Содержимое
	
</div>
<script>
if(getCookie('con1on')) {
$('#con1').slideDown(500);
$('#tit1').toggle(function() {
eraseCookie('con1on');
$('#con1').slideUp(500);
}, function() {
setCookie('con1on', 1, 365);
$('#con1').slideDown(500);
});
} else {
$('#tit1').toggle(function() {
$('#con1').slideDown(500);
setCookie('con1on', 1, 365);
}, function() {
$('#con1').slideUp(500);
eraseCookie('con1on');
});
}</script>

И JS

function setCookie(name, value, days) {
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
var expires = "; expires=" + date.toGMTString();
}
else var expires = ";
document.cookie = name + "=" + value + expires + "; path=/";
}
function getCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
}
return null;
}
function eraseCookie(name) {
setCookie(name, "", -1);
};

 

 

  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85
Советую обратить внимание на следующее:
  1. Не работает тег spoiler в DLE
  2. Убираем лишний title в dle
  3. Проблема со спойлером на дле 9.3
  4. Помогите сделать фотогалерею на сайте DLE
  5. Проблема со спойлером DLE 9.4


Оформление форума – IPBSkins.ru