|
|
|
| Здравствуйте,
Очень нужна ваша помощь, т.к. с JavaScript'ом не в ладах :(
Очень нужно сделать следующее: перед пользователем расположен блок информации. Рядом с этим блоком есть ссылка "Свернуть" (или если блок свёрнут то "Развернуть"), при нажатии на которую блок сворачивается/разворачивается. Как это сделать представление я имею, но вот особенностью этого является то, что действие пользователя должно запоминаться. Как я понял это делается с помощью Cookies. Реализацию этого дела на PHP я знаю, но будет использоваться перезагрузка страницы, а хочется обойтись без этого.
Заранее большое спасибо :) | |
|
|
|
|
|
|
|
для: Desh
(01.05.2008 в 23:09)
| |
<html>
<head>
<script>
function setCook(name, val, expr) {
var expires = "";
if (expr) {
var d = new Date();
d.setTime(d.getTime() + expr * 60 * 60 * 1000);
expires = "; expires=" + d.toGMTString();
}
document.cookie = name + "=" + val + expires + "; path=/";
}
function getCook(name) {
var re = new RegExp("(\;|^)[^;]*("+name+")\=([^;]*)(;|$)");
var res = re.exec(document.cookie);
return res != null ? res[3] : null;
}
function selMode() {
if (mode > 0) {
mode = 0;
setCook('mode', 0, 2);
} else {
mode = 1;
setCook('mode', 1, 2);
}
hideShow();
}
function hideShow() {
document.getElementById('hlp').style.display = mode > 0 ? 'none' : '';
}
var mode = getCook('mode')==null ? 0 : getCook('mode');
</script>
</head>
<body onload="hideShow()">
<table>
<tr onclick="selMode()">
<td>Header</td>
</tr>
<tr id="hlp" style="display: '';">
<td>Help</td>
</tr>
<tr>
<td>Content</td>
</tr>
</table>
</body>
</html>
|
На примере таблицы, в которой скрывается/показывается средняя строка ("Help"), по щелчку на строке "Header". Но ведь cookie могут быть отключены у клиента, как тогда? | |
|
|
|
|
|
|
|
для: sim5
(02.05.2008 в 09:53)
| | В таком случае просто не запоминается :) | |
|
|
|
|
|
|
|
для: Desh
(09.05.2008 в 16:10)
| | а как тут еще добавить полей? для скрытия отображения | |
|
|
|
|
|
|
|
для: dirol
(11.07.2008 в 01:31)
| | хелп | |
|
|
|
|
|
|
|
для: Desh
(01.05.2008 в 23:09)
| | а зачем куки?
а если так:
содержимое пхп файла
<?
echo "<html>";
echo "<head>";
echo "<SCRIPT LANGUAGE='JavaScript' TYPE='text/javascript' SRC='indexjs.js'></script>";
echo "<div id='open' ><input type=button value='Развернуть' onmouseup=opendiv()></div><div id='close' style='display:none;'><input type=button value='Свернуть' onmouseup=closediv()></div><div id='text' style='display:none;'>СВОРАЧИВАЕМЫЙ\РАЗВОРАЧИВАЕМЫЙ БЛОК С ТЕКСТОВЫМ СОДЕРЖИМЫМ</div><input type=hidden id='inp' value='closed'>";
echo "</head>";
echo "<body onLoad=op()></body></html>";
?>
|
содержимое яваскрипт файла
function opendiv()
{
text.style.display='inline';
close.style.display='inline';
open.style.display='hidden';
document.getElementById('inp').value=opened;
};
function closediv()
{
text.style.display='hidden';
close.style.display='hidden';
open.style.display='inline';
document.getElementById('inp').value=closed;
};
function op()
{
var statys=document.getElementById('inp').value;
if (statys=='closed')
{
text.style.display='hidden';
close.style.display='hidden';
open.style.display='inline';
}
else
{
text.style.display='inline';
close.style.display='inline';
open.style.display='hidden';
}
};
|
зы:не проверял,а писал прямо сюда. | |
|
|
|
|
|
|
|
для: sanitar
(12.07.2008 в 23:33)
| | спасибо за старания но надо на кукисах имено. чтобы сохранялось свернутой форма. и наддо добавить еще произвольное количество сворачеваемых форм как на форуме ipb чтото в этом роде | |
|
|
|
|
|
|
|
для: dirol
(13.07.2008 в 01:27)
| | В каком смысле произвольное - скрывать сразу группу объектов или множество, но раздельно? | |
|
|
|