Показать сообщение отдельно
  #8 (permalink)  
Старый 13.08.2008, 14:20
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

and50,
Запоминать её, точно так же как div, при открытии - скрывать, при закрытии - показывать. Что-то на подобии этого:
<html>
<head>
    <script>
        // Обворачиваем функцию toggle в локальное замыкание:
        var toggle = function() {
            // Ссылка на текущий открытый div:
            var currentDiv = null;
			// Текущая ссылка:
			var currentAnchor = null;
 
            // Функция для "раскрытия" элемента:
            function open(divElement, linkElement) {
				// Запоминаем и прячем ссылку:
				currentAnchor = linkElement;
				currentAnchor.style.display = "none";
				
                // Тут можно добавить эффект "плавного" открытия:
                divElement.style.display = "block";
                currentDiv = divElement;
            }
 
            // Функция для "закрытия" элемента:
            function close(divElement) {
				// Показываем ссылку и "забываем":
				currentAnchor.style.display = "inline";
				currentAnchor = null;
			
                // Тут можно добавить эффект "плавного" закрытия:
                divElement.style.display = "none";
                currentDiv = null;
            }
 
            // Возвращаем функцию, которая будет вызываться по toggle()
            return function(divID, link) {
                // Получаем элемент из DOM
                var divElement = document.getElementById(divID);
                // Если такой есть:
                if (divElement) {
                    // Если уже открыт какой-то div - закрываем.
                    if(currentDiv != null) close(currentDiv);
                    // Открываем вызваный.
                    open(divElement, link);
                }
            }
        // Вызываем нашу "обертку", теперь toggle() вызывает функцию, описанную по "return"
        }();
    </script>
    <style>
        .myDiv {
            display: none;
        }
    </style>
</head>
<body>
    <a href="javascript://" onClick="toggle('div1', this)">Link1</a>
    <div class="myDiv" id="div1">
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
    </div>
    <br />
 
    <a href="javascript://" onClick="toggle('div2', this)">Link2</a>
    <div class="myDiv" id="div2">
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
    </div>
    <br />
 
    <a href="javascript://" onClick="toggle('div3', this)">Link3</a>
    <div class="myDiv" id="div3">
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
        Содержание<br />
    </div>
    <br />
</body>
</html>
Ответить с цитированием