Показать сообщение отдельно
  #1 (permalink)  
Старый 09.07.2010, 14:11
Новичок на форуме
Отправить личное сообщение для Perlovka_Nat Посмотреть профиль Найти все сообщения от Perlovka_Nat
 
Регистрация: 09.07.2010
Сообщений: 4

Отображение скрытых блоков
Сейчас у меня такая задача.
В цикле крутятся даты с параметром $i,события с одинаковой датой заносятся каждый в свой блок по дате.И есть кнопки к этим блокам.Как их связать?Нужно открывать/закрывать по кнопке один блок с определенной датой, блоки должны сменять друг друга (Привер блоков на картинке).

Есть код, обрабатывающий кнопки:
Код Javascript
[JS]<script>
 
var toggle = function() {
  
    var currentDiv = null;

  
    function open(divElement) {
        
        divElement.style.display = "block";
        currentDiv = divElement;
    }

  
    function close(divElement) {
       
        divElement.style.display = "none";
        currentDiv = null;
    }

  
    return function(divID) {
        // Ïîëó÷àåì ýëåìåíò èç DOM
        var divElement = document.getElementById(divID);
   
        if (divElement) {
    
            if (divElement === currentDiv) {
                close(currentDiv);
           
            } else if(currentDiv != null) {
                close(currentDiv);
                open(divElement);
           
            } else open(divElement);
        }
    }
  
  }();
  

</script>
[/JS]


Есть кнопки:

if ($i == 1)
	{
    echo '<tr ><TD width="39" height="39" nowrap align="center" valign="middle">';
    ?>
    <A href="javascript://" onClick="toggle('cont1');return false;" style="text-decoration:none"><div class="data1"><br><? echo $day_now.'.'; echo $month_now; ?></div></a>
<?
    echo '</TD></tr>';
    
    }
	else
		{
		if ($day_name == 0 or $day_name == 6){
    echo '<tr ><TD width="39" height="39" nowrap align="center" valign="middle">';
    ?>
    <A href="javascript://" onClick="toggle('<? echo $day_sel?>');return false;" style="text-decoration:none"><div class="data1"><br><? echo $day_now.'.'; echo $month_now; ?></div></a>
<?
    echo '</TD></tr>';
    }
		else
    {
    echo '<tr ><TD width="39" height="39" nowrap align="center" valign="middle">';
    ?>
    <A href="javascript://" onClick="toggle('<? echo $day_sel?>');return false;" style="text-decoration:none"><div class="data1"><br><? echo $day_now.'.'; echo $month_now; ?></div></a>
<?
    echo '</TD></tr>';

    }
   	  
		}



Значит кнопки вроде работают.Но есть несколько проблем:
1. Один блок я сделала видимым.И когда жму по другим кнопкам, он не закрывается.Ну закрывается только под своей кнопкой.А блоки должны меняться.С остальными кнопками нормально, только первая.Возможно потому,что вынесла ее в отдельный блок.Но как тогда задать ей display:block.
2. Под одной датой может быть несколько записей.Но везде открывается только одна.Вот.Почему?
Ответить с цитированием