Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   JS смена style.css! (https://javascript.ru/forum/misc/7825-js-smena-style-css.html)

karakym 21.02.2010 00:47

JS смена style.css!
 
Хочу я переделать скрипт смены фона на скрипт смены style.css!
Вот есть много примеров смены фона но все они используют функцию
document.bgColor

А в яваскрипт я новичок, поэтому не получается переделать!
Если не будет сложно, сделайте что бы это все дело юзеру в куки добавлялось!
Может кто поможет??

karakym 21.02.2010 11:06

Ладно подскажите тогда как вот этот скрипт смены фона можно переделать под смену стиля???

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Bg</title>
<style type="text/css">
   *{ margin: 0; padding:0}
   
   html, body { background: #999; height: 100%; }
   div { padding: 5px 5px 30px; background: #fff; width: 100px;}
   img { display: block; margin-top: 20px; border: 1px solid #000; padding: 3px;}
</style>

</head>

<body>
<input type="submit" value="Нажать" onclick="bg(2)" /><br />
<div>
   <img src="img1.png" onclick="bg(1)" />
   <img src="img2.png" onclick="bg(2)" />
   <img src="img3.png" onclick="bg(3)" />
</div>
<script>
   
   
   function bg(param){
      var bodyNode = document.getElementsByTagName('body').item(0)
      bodyNode.style.background = 'url(img'+param+'.png)'
   }

</script>
</body>
</html>

Blizzart 21.02.2010 12:02

Может это поможет? Просто в функцию поместить нужный стиль
document.write([
	    '<style type="text/css">',
	    '   .content a:link {',
	    '       visibility:hidden;',
	    '   }',
	...
	    '</style>'].join('\n'));

karakym 21.02.2010 13:00

Чет не выходит((

karakym 21.02.2010 17:34

Ааауууу......................

vk65535 22.02.2010 15:05

...
<head>
<link id="dyncss" rel="stylesheet" type="text/css" href="" />
<script type="text/javascript">
function setDynCSS(url) {
	if (!arguments.length) {
		url = (url = document.cookie.match(/\bdyncss=([^;]*)/)) && url[1];
		if (!url) return '';
	}
	document.getElementById('dyncss').href = url;
	var d = new Date();
	d.setFullYear(d.getFullYear() + 1);
	document.cookie = ['dyncss=', url, ';expires=', d.toGMTString(), ';path=/;'].join('');
	return url;
}
setDynCSS();
</script>
</head>
<body>
<input onchange="setDynCSS(this.value);" />
...

P.S. В функцию передавать url css-а.

karakym 22.02.2010 15:55

vk65535, Большое тибе спасибо!
Если получитсо + дам, а если можно больше, то дам сколько можно будет!)

karakym 22.02.2010 16:03

vk65535,
Подожди, я правильно все сделал?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<link id="dyncss" rel="stylesheet" type="text/css" href=">
	<script type="text/javascript">
	function setDynCSS(url) {
	    if (!arguments.length) {
	        url = (url = document.cookie.match(/\bdyncss=([^;]*)/)) && url[1];
	        if (!url) return '';
	    }
	    document.getElementById('dyncss').href = url;
	    var d = new Date();
	    d.setFullYear(d.getFullYear() + 1);
	    document.cookie = ['dyncss=', url, ';expires=', d.toGMTString(), ';path=/;'].join('');
	    return url;
	}
	setDynCSS();
	</script>
	</head>
	<body>
	<input onchange="setDynCSS(this.value);" />
<input type="submit" value="Нажать" onclick="bg(2)" /><br />
<div>
<img src="img1.png" onclick="bg(1)" />
<img src="img2.png" onclick="bg(2)" />
<img src="img3.png" onclick="bg(3)" />
</div>
<script> 	
	
function bg(param){
var bodyNode = document.getElementsByTagName('body').item(0)
bodyNode.style.background = 'url(img'+param+'.png)'
}
	
</script>
</body>
</html>

karakym 22.02.2010 16:09

vk65535,
Смотри у меня есть три css'а один из них используется в даный момент!
Мне просто вписать полный путь к любому стилю, а потом что делать?

vk65535 22.02.2010 16:19

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<link id="dyncss" rel="stylesheet" type="text/css" href="">
	<script type="text/javascript">
	function setDynCSS(url) {
	    if (!arguments.length) {
	        url = (url = document.cookie.match(/\bdyncss=([^;]*)/)) && url[1];
	        if (!url) return '';
	    }
	    document.getElementById('dyncss').href = url;
	    var d = new Date();
	    d.setFullYear(d.getFullYear() + 1);
	    document.cookie = ['dyncss=', url, ';expires=', d.toGMTString(), ';path=/;'].join('');
	    return url;
	}
	setDynCSS();
	</script>
	</head>
	<body>
<div>
<img src="img1.png" onclick="setDynCSS('/pathto/css1.css')" />
<img src="img2.png" onclick="setDynCSS('/pathto/css2.css')" />
<img src="img3.png" onclick="setDynCSS('/pathto/css3.css')" />
</div>
</body>
</html>


Часовой пояс GMT +3, время: 08:51.