Скрипты смены стилей!! нужен ответ - Форум
Страница 1 из 11
Форум » Форум веб мастеров » jQuery & JavaScript » Скрипты смены стилей!! нужен ответ
Скрипты смены стилей!! нужен ответ

FalleN
Пользователи
Сообщений 51
+
+13
-
Ваши награды 2
FalleN написал: В ответ пользователя FalleN Написано 25 мая 2012 в 22:44
Сообщение № 1
Всем доброго времени суток!!
И так, наверняка все знают о существовании скрипта для выбора стиля сайта..(смена стилей, он еще на куках)... но этот скрипт плох тем что файлы стилей весят много и браузеру приходится загружать все стили сразу.. Полазив в нете, на сайтах увидел смену стилей, но при выборе нужной страница перезагружается и загружается тока тот стиль который я выбрал, короче говоря по умолчанию он загружает стандартную таблицу стилей,а при выборе нужной применяет ее и все время загружает тока файл нужного мне стиля!!!
Где взять такой же скрипт, чтоб загружал тока выбранный мной стиль, а не все сразу как я описал выше???
P.S. надеюсь меня поняли
«Пред. тема След. тема»

MakAn
VIP
Сообщений 575
+
+310
-
Ваши награды 15
MakAn написал: отредактировал: Fenriks_2012 - Суббота, 26.05.2012, 00:15 В ответ пользователя MakAn Написано 26 мая 2012 в 00:08
Сообщение № 2
FalleN, не занимайся фигней,ты себе тока сайт убьеш....он будет дико тормозить dry

blink

GhostlyP
VIP
Сообщений 475
+
+2944
-
Ваши награды 35
GhostlyP написал: В ответ пользователя GhostlyP Написано 26 мая 2012 в 00:14
Сообщение № 3
В стандартной верстке должен присутствовать тег <link> который указывает браузеру путь к файлу со стилями. Этот тег мы и будем менять, а точнее путь к файлу.

Code
<link rel="stylesheet" type="text/css" href="red.css" id="changeable_styles"></link>


Как видите, помимо стандартных атрибутов я добавил id="changeable_styles". Это будет идентификатор тега <link>, который мы будем менять.
Между <head></head> установите код, который я привел ниже.

Code
<script>
function setCookie(a,b,c){if(c){var d=new Date();d.setTime(d.getTime()+(c*24*60*60*1000));var e="; expires="+d.toGMTString()}else var e="";document.cookie=a+"="+b+e+"; path=/"};function getCookie(a){var b=a+"=";var d=document.cookie.split(';');for(var i=0;i<d.length;i++){var c=d[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(b)==0)return c.substring(b.length,c.length)}return null};function eraseCookie(a){setCookie(a,"",-1)};
</script>


Этот код облегчает установку Cookies, которую мы будем использовать.

Перед </body> поставьте еще один код.

Code
<script>
+function() {
std = 'red.css'; // стандартные стили
if(getCookie('color_of_style')){var color=getCookie('color_of_style')}else{var color=std};document.getElementById('changeable_styles').href=color;
}();
</script>


Измените тут значение переменной std. У меня оно 'red.css' — это путь к стандартным стилям.

А теперь сами кнопки. Их может быть больше, но я решил на примере двух.

Code
<input type="button" onclick="setCookie('color_of_style', 'blue.css', 365); document.getElementById('changeable_styles').href = 'blue.css';" value="Blue">
<input type="button" onclick="setCookie('color_of_style', 'red.css', 365); document.getElementById('changeable_styles').href = 'red.css';" value="Red">


В этих кнопках Вам нужно лишь изменить путь к Вашим стилям ('blue.css' и 'red.css') в двух местах в каждой из кнопок, а так же то, что будет написано на кнопке.

Если Вы все сделали правильно, то переключатель стилей заработает. Удачи.



подпись: Linkum GhostlyP
Форум » Форум веб мастеров » jQuery & JavaScript » Скрипты смены стилей!! нужен ответ
Страница 1 из 11
Поиск:
Топ пользователей: