Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   простой show/hide для контента (https://javascript.ru/forum/dom-window/1550-prostojj-show-hide-dlya-kontenta.html)

Андрей Параничев 15.01.2009 17:59

UncleGluk,
Не понял, если честно. HTML-код этого примера выложите, пожалуйста.

UncleGluk 15.01.2009 18:22

Хорошо. Вот небольшая часть то что связана со скриптом:
<script>
 // Обворачиваем функцию toggle в локальное замыкание:
        var toggle = function() {
            // Ссылка на текущий открытый div:
            var currentDiv = null;

            // Функция для "раскрытия" элемента:
            function open(divElement) {
                // Тут можно добавить эффект "плавного" открытия:
                divElement.style.display = "block";
                currentDiv = divElement;
            }

            // Функция для "закрытия" элемента:
            function close(divElement) {
                // Тут можно добавить эффект "плавного" закрытия:
                divElement.style.display = "none";
                currentDiv = null;
            }

      // Возвращаем функцию, которая будет вызываться по toggle()
            return function(divID) {
                // Получаем элемент из DOM
                var divElement = document.getElementById(divID);
                // Если такой есть:
                if (divElement) {
                    // Если уже открыт этот div, то просто закрываем.
                    if (divElement === currentDiv) {
                        close(currentDiv);
                    // Если открыт другой div, то закрываем и открываем текущий:
                    } else if(currentDiv != null) {
                        close(currentDiv);
                        open(divElement);
                    // Иначе - просто открываем:
                    } else {
                        open(divElement);
                    }
                }
            }
        // Вызываем нашу "обертку", теперь toggle() вызывает функцию, описанную по "return"
        }();
    </script>
	<style>
        .myViewLinks {
            display: none;
        }
    </style>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><noscript><strong>To view links in this part requires JavaScript!</strong></noscript></td>
  </tr>
  <tr>
    <td> <a href="javascript://" onClick="toggle('div1')">LINKS 1</a>
    <div class="myViewLinks" id="div1">
        <img src="08w1.jpg" width="100" height="200"><br />
        <img src="08w2.jpg" width="100" height="200"><br />
        <img src="08w3.jpg" width="100" height="200"><br />
        <img src="08w4.jpg" width="100" height="200"><br />
    </div>
    <br />

    <a href="javascript://" onClick="toggle('div2')">links 2</a>
    <div class="myViewLinks" id="div2">
      <strong>QWERTY 1:</strong>
<ol>
<li><a href="http://google.com/" >Part 1</a></li>
<li><a href="http://google.com/" >Part 2</a></li>
<li><a href="http://google.com/" >Part 3</a></li>
<li><a href="http://google.com/" >Part 4</a></li>
<li><a href="http://google.com/" >Part 5</a></li>
</ol>
<strong>QWERTY 2:</strong>
<ol>
<li><a href="http://yahoo.com/" >Part 1</a></li>
<li><a href="http://yahoo.com/" >Part 2</a></li>
<li><a href="http://yahoo.com/" >Part 3</a></li>
<li><a href="http://yahoo.com/" >Part 4</a></li>
<li><a href="http://yahoo.com/" >Part 5</a></li>
    </ol>

    </div>    </td>
  </tr>

  <tr>
    <td>&nbsp;</td>
  </tr>
</table>

Андрей Параничев 15.01.2009 20:57

UncleGluk,
Какая версия браузера, и как именно выключаете JavaScript? У меня все отображается, как ожидается: надпись о выключенном JavaScript и две ссылки. Может у вас другие стили какие-то вызывают такое поведение?

UncleGluk 16.01.2009 17:11

Цитата:

Сообщение от Андрей Параничев (Сообщение 10783)
UncleGluk,
Какая версия браузера, и как именно выключаете JavaScript? У меня все отображается, как ожидается: надпись о выключенном JavaScript и две ссылки. Может у вас другие стили какие-то вызывают такое поведение?

Я тоже сначала подумал на стили или еще чего там.. Вытащил тот кусок что сюда запостил, и попробовал - в выключенном JavaScript две ссылки + ссылки которые в DIV должны быть. причем текста нету.
Браузер FireFox 2.0.0.20 и плагин что позволяет все это выключать JavaScript - NoScrpt версии 1.8.8.8.
Собственно в IE не проверял.

Андрей Параничев 17.01.2009 19:29

UncleGluk,
Я отключал через настройки браузера и все работало как надо. Я щас поставлю плагин, проверю в чем дело.


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