Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Как сохранить стиля для всех страниц сайта


Автор: Sandris 28.8.2003, 12:46
На главной странице сайта пользователь выбирает стиль из нескольких предложенных (используем CSS). Проблема - необходимо сохранить этот стиль для всех страниц сайта.
Как можно это реализовать? Подскажите, плз....

Автор: MuToGeN 28.8.2003, 13:44
Кинуть имя CSS фаила в куки, потом выдавать с помощью document.write

Автор: Sandris 28.8.2003, 14:11
Mu-To-Geniy!

Автор: MuToGeN 28.8.2003, 14:21
В смысле?

Автор: Cepera 28.8.2003, 14:25
MuToGeN, в том что Мутоген и генийsmile.gif

Автор: MuToGeN 28.8.2003, 14:30
smile.gif все, сейчас стесьняться начну smile.gif

Автор: Sandris 28.8.2003, 14:44
Мне стыдно, но я спрошу...
А как это правильно написать?

в двух строчках...

Автор: MuToGeN 28.8.2003, 15:18
Sandris, к сожалению, как задать нормально куку с помощью JS, я пока что сам толком не освоил. Там заморочки с датой. Если просто document.cookie="file=css1.css", то кука сдохнет, как только закроется окно браузера

Автор: Sandris 28.8.2003, 15:36
а если так?

function SetCookieForNDays(name, value, days, path, domain, secure)
{
var today = new Date();
expires = new Date(today.getTime() + days*24*60*60*1000);

document.cookie = name + "=" + escape(value) +
"; expires=" + expires.toGMTString() +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}

name = "style";
value = "css1.css";

SetCookieForNDays(name, value, days, path, domain, secure);

А как потом их прочитать, то бишь, извлечь на нужной странице?

Автор: MuToGeN 28.8.2003, 16:00
Если так, то
Код
<script language="JavaScript">
document.write("<meta link=\"stylesheet\" type=\"text/css\" href=\""+document.cookie.substr(6)+"\">\n");
</script>
Это вставляется там, где должно быть <link rel="stylesheet" ...>

Автор: MuToGeN 28.8.2003, 16:02
Кстати, к
Код
name = "style";
value = "css1.css";
надо бы еще добавить
Код
days=365;
path=false;
domain=false;
secure=false;
А то ошибка вылезает

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)