Показать сообщение отдельно
  #4 (permalink)  
Старый 20.07.2008, 16:31
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

На загрузку страницы нужно прикрутить getCookie, в вашем примере я сделал так (в FF3 прокатило):
<script language="JavaScript" type="text/javascript" src="menu.js"></script>
<table width="200" border="0">
<tr><td class="module-title"><b>Новости</b></td>
<td  id="cont" onclick="SwitchMenu('news');SwitchMenu('news1');SwitchMenu('news2');" style="cursor:pointer;"  nowrap="nowrap" valign="top">
<div id="news1" style="display:none;"><img src="http://javascript.ru/forum/images/plus.gif" align="right" valign="top"></div>
<div id="news2" style="display:block;"><img src="http://javascript.ru/forum/images/minus.gif" align="right" valign="top"></div>
</td></tr>
<tr><td colspan="2"><div id="news" style="display:block;">
1. Косметолога Оксаны Пушкиной осудили условно<br>
2. «Аэроэкспресс» выплатит компенсацию пассажирам, опоздавшим на самолеты<br>
3. Начала обещанного отдыха в Турции российские дети ждали три дня<br>
4. Медведев поздравил Нельсона Манделу с 90-летием<br>
5. Армия Приднестровья готова помочь Абхазии
</div></td></tr></table>
<script type="text/javascript">
getCookie('news');
</script>


Сам код:
function SwitchMenu(obj) {
	if (document.getElementById) {
		var el = document.getElementById(obj);
		var ar = document.getElementById("cont").getElementsByTagName("td");
		if (el.style.display == "none") {
			for (var i=0; i<ar.length; i++) {
				ar[i].style.display = "none";
			}
			el.style.display = "block";
			setCookie('news', 'false');
		} else {
			el.style.display = "none";
			setCookie('news', 'true');
		}
		
	}
}

var TIME = 3*24*60*60*1000; //3 дня
function setCookie (name, value) {
	var time = new Date();
	time.setTime(Date.parse(time) + TIME);
	document.cookie = name + '=' + value + '; expires=' + time;
}

function getCookie(name) {
	if (document.cookie.search(name + '=true') != -1) {
		SwitchMenu('news');
		SwitchMenu('news1');
		SwitchMenu('news2');
	}
}

Вроде работает.
Украшательствами заниматься не стал...

Последний раз редактировалось Snipe, 20.07.2008 в 16:35.
Ответить с цитированием