Показать сообщение отдельно
  #9 (permalink)  
Старый 05.09.2010, 00:23
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

<link rel="stylesheet" type="text/css" href="style1.css" />
<script type="text/javascript">

window.onload = function(){
    var selectedElem = document.getElementById("menu").getElementsByTagName('select');
	var getElemsName = document.getElementsByTagName('link');
    for(i=0; i<selectedElem.length; i++) {
        selectedElem[i].onchange = function(){
			for(i=0; i<getElemsName.length; i++){
				var getStyleName = this.options[this.selectedIndex].value;
				var getOldElem = getElemsName[i].getAttribute("href");
				var expires = new Date();
					expires.setTime(expires.getTime() + (365 * 24 * 60 * 60 * 1000));
				if (getElemsName[i].hasAttribute("href") && getElemsName[i].getAttribute("href") != getStyleName){
					getElemsName[i].removeAttribute('href');
					getElemsName[i].setAttribute("href", getStyleName);
					document.cookie = 'style' + '=' + encodeURIComponent(getStyleName) + '; expires=' + expires.toGMTString() + '; path=/; domain=' + window.location.hostname;
					alert('Файл ' +getOldElem+ ' изменент на ' +getCookie('style'));
				}
			}
        }
		function getCookie(name) {
			var regexp = new RegExp("(?:; )?" + name + "=([^;]*);?");
			if(regexp.test(document.cookie)){
				return decodeURIComponent(RegExp["$1"]);
			}
			return false;
		}
        selectedElem[i].onfocus = function() {
			this.form.reset();
        }
    }
};
</script>

<div id="menu">
	<form action="">
	<select>
		<option disabled="disabled" selected="selected" value="0"> - - - Выберите - - - </option>
		<option value="style1.css">style1</option>
		<option value="style2.css">style2</option>
		<option value="style3.css">style3</option>
	</select>
	</form>
</div>


PS: не забудьте положить подключаемые файлы на сервер и помните, что это черновой вариант, который возможно требует доработок.

Последний раз редактировалось monolithed, 05.09.2010 в 00:30.
Ответить с цитированием