Хотелось бы сделать на сайте сменный дизайн. Чтобы каждый юзер мог выбрать один из 3-4 вариантов, чтобы после входа/выхода выбранный диз сохранялся ну и тд и тп, всё "как у людей". Кто-нибудь пробовал подобное? Может кто-то даже реализовал?
Почему мудрено? Все просто. И как можно поменять дизайн без CSS...
Вобщем вот:
1. Создаем файл с JS, к примеру change_css.js.
В файл вставляем следующий код:
Code
1
2
// Ниже меняем значения по вкусу
3
var expDays = 9999; // Сколько дней будут сохранятся настройки стиля
4
var standardStyle = '2'; // Номер стандартного стиля(по умолчанию)
5
var nameOfCookie = 'switchstyle'; // Имя печеньки
6
var urlToCSSDirectory = 'http://www.my.my/styles/'; // Папка в которой хранятся стили
7
8
// Имена ваших файлов стилей, цифры в названиях соответствуют номеру стиля
9
var ScreenCSS_1 = 'screen_1.css';
10
var ScreenCSS_2 = 'screen_2.css';
11
var ScreenCSS_3 = 'screen_3.css';
12
var ScreenCSS_4 = 'screen_4.css';
13
var ScreenCSS_5 = 'screen_5.css';
14
15
// Если вы используете отдельные стили для печати то поменяйте эти для того что бы стили для печати менялись тоже. Если нет то пропишите все точно так же как и выше
16
// Например ваш первый стиль называется blahblah_1.css то вместо print_1.css вставьте blahblah_1.css
2. В этой строке - var urlToCSSDirectory = 'http://www.my.my/styles/'; меняем http://www.my.my/styles/ на путь квашим стилям.
3. В этих строках var ScreenCSS_1 = 'screen_1.css'; var ScreenCSS_2 = 'screen_2.css'; var ScreenCSS_3 = 'screen_3.css'; var ScreenCSS_4 = 'screen_4.css'; var ScreenCSS_5 = 'screen_5.css'; меняем screen_х.css на имена ваших файлов стилей, цифра в имени соответствует номеру стиля.
4. Эти строчки var PrintCSS_1 = 'print_1.css'; var PrintCSS_2 = 'print_2.css'; var PrintCSS_3 = 'print_3.css'; var PrintCSS_4 = 'print_4.css'; var PrintCSS_5 = 'print_5.css'; меняем на var ScreenCSS_1 = 'screen_1.css'; var ScreenCSS_2 = 'screen_2.css'; var ScreenCSS_3 = 'screen_3.css'; var ScreenCSS_4 = 'screen_4.css'; var ScreenCSS_5 = 'screen_5.css'; с именами ваших файлов стилей и в каждойстроке ScreenCSS заменяем на PrintCSS.
5. Сохраняем скрипт.
6. Заливаем скрипт на сайт.
7. В <head> вставляем <script type="text/javascript" src="changeStyle.js"></script>, changeStyle.js меняем на путь к вашему скрипту залитому на сайт.
8. Заливаем ваши файлы стилей на сайт в указаную вами дерикторию в строке var urlToCSSDirectory = 'http://www.my.my/styles/';.
9. В <body> вставляем этот код, там где мы хотим что бы отображалось "меню" переключения стилей:
BeSinLi, большой код.. Sigma, писал раньше на юкозе там еще jquery встроенный так сам код мне обошелся.. встрок на 10 небольше.. делал на куках сменный css. Подругому там нормально несделаешь. если у тебя пхп хостинг то вопрос в раздел чуть повыше
Господи же боже мой! Вы ненормальные тут все? Это в одну строку пишется (для тупых с комментариями - в три). Файлик js в аттаче - после редактирования - вешать в шапку страницы вместо линка на стили.
В вашей папке стилей должны обязательно быть стили default.css - стили по умолчанию, ну и могут наличествовать файлы дополнительных стилей любых названий, все названия файлов, которые вы хотите использовать в плюс необходимо внести в скрипт (защита от идиота, чтоб пользователи ни в коем случае не увидели сайт вообще без стилей).
Кука вешается совершенно спокойно до 3000 года, плевать когда она сдохнет. Если кука не найдена и не указан стиль вручную (тоесть не происходит переключение стиля) линкуется дефолтный стиль.
Переключение стилей на сайте осуществляется простым проходом по ссылке вида: