Два дизайна на одном сайте
Наверное есть такие люди, которые хотят сделать несколько дизайнов для своего сайта.
С помощью скрипта, показанного ниже, это можно реализовать.
Важно!
Скрипт производит замену CSS, поэтому все настройки "красоты", должны
быть именно в нем. Все, что написано не в CSS, а в коде HTML, останется
неизменным.
Информация о выбранном варианте сайта сохраняется в куки, что избавляет от постоянного сброса настроек.
Итак коды:
Между <head></head> вставляем этот скрипт:
Code
<script>
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=");
if (c_start!=-1)
{
c_start=c_start + c_name.length+1;
c_end=document.cookie.indexOf(";",c_start);
if (c_end==-1) c_end=document.cookie.length;
return unescape(document.cookie.substring(c_start,c_end));
}
}
return "";
}
function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}
var diz = getCookie('mydiz') ? getCookie('mydiz') :'styles1';
document.write('<link type="text/css" rel="StyleSheet" href="http://ваш сайт/'+diz+'.css">');
function dizsave() {
setCookie('mydiz',document.getElementsByName('mdiz')[0].value, 365);
location.reload();
}
</script>
*'styles1' - название вашего CSS, лучше, если оно будет таким же.
*http://ваш сайт/ - адрес на папку с CSS.
Я использую два дизайна (можно больше) и оба файла CSS (styles1.css и styles2.css) лежат в корне сайта.
Затем, между <body> и </body> ставим это:
Code
Выберите дизайн сайта:
<select name="mdiz">
<option value="styles1" selected="selected">Темный</option>
<option value="styles2">Светлый</option>
</select>
<input type="button" name="save" onclick="dizsave(); return true;" value="Сохранить" />
*Выберите дизайн сайта: - Напишите че угодно, можно удалить.
*"styles1" и "styles2" - имена ваших листов стилей (CSS), обратите внимание, пишется без ".css"
*Темный и Светлый - названия ваших дизайнов, для пользователей.