Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 21.12.2013, 19:09
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Улучшенный вариант (без дополнительных классов)
<head>
    <style>
      .link {
        border:none;
        background-color: transparent;
        text-decoration: underline;
        color: #476C8E;
        display: block;
        outline: none;
        cursor: pointer;
      }
      .sp-text {
        display: none;
        border: 1px solid #d5d5d5;
        background-color: #f5f5f5;
        padding: 5px;
      }
    </style>
    <script>
      var spoiler = function (el) {
          var sptext = el.nextElementSibling || (function() {
                do { el = el.nextSibling } while ( el && el.nodeType !== 1 );
                return el;
          })(el);
          if (sptext.style.display == "") {
            sptext.style.display = "block";
            el.value = "Закрыть";
          } else {
            sptext.style.display = "";
            el.value = "Показать решение";
          }
        };
    </script>
  </head>
   
  <body>
    <input type="button" onclick="spoiler(this)" value="Показать решение" class="link">
    <div class="sp-text">Ваш текст ...</div>
    <input type="button" onclick="spoiler(this)" value="Показать решение" class="link">
    <div class="sp-text">Ваш текст ...</div>
  </body>

Костыль для nextElementSibling нужен для IE8
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #12 (permalink)  
Старый 21.12.2013, 19:55
Аватар для sport-chess
Интересующийся
Отправить личное сообщение для sport-chess Посмотреть профиль Найти все сообщения от sport-chess
 
Регистрация: 21.12.2013
Сообщений: 19

При нажатии не реагирует ссссс...ка. Вот пример:
http://chessclub.host22.com/raznoe/p...-spojller.html
Ответить с цитированием
  #13 (permalink)  
Старый 21.12.2013, 19:58
Аватар для sport-chess
Интересующийся
Отправить личное сообщение для sport-chess Посмотреть профиль Найти все сообщения от sport-chess
 
Регистрация: 21.12.2013
Сообщений: 19

Что не так здесь? Тоже не работает...

<!-- код спойллера -->
<script language="javascript">
function toggle() {
var ele = document.getElementById("toggleText");
var text = document.getElementById("displayText");
if(ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "Показать решение";
}
else {
ele.style.display = "block";
text.innerHTML = "Закрыть";
}
}
</script>

1)
<a href="javascript:toggle(1);" id="displayText1">Показать решение</a>
<div id="toggleText" style="display: none;">Сам текст в спойлере... </div>

2)

<a href="javascript:toggle(2);" id="displayText2">Показать решение</a>
<div id="toggleText" style="display: none;">Сам текст в спойлере... </div>
Ответить с цитированием
  #14 (permalink)  
Старый 21.12.2013, 20:16
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от sport-chess
При нажатии не реагирует ссссс...ка. Вот пример:
Предполагается что скрытый блок идет следом за кнопкой. То есть убери обертку <p> .. </p>
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #15 (permalink)  
Старый 21.12.2013, 20:18
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,672

Сообщение от sport-chess Посмотреть сообщение
Что не так здесь? Тоже не работает..
<script>
	function toggle(i) {
		var ele = document.getElementById("toggleText" + i);
		var text = document.getElementById("displayText" + i);
		if (ele.style.display == "block") {
			ele.style.display = "none";
			text.innerHTML = "Показать решение";
		} else {
			ele.style.display = "block";
			text.innerHTML = "Закрыть";
		}
	}
</script>

<a href="javascript:toggle(1);" id="displayText1">Показать решение</a>
<div id="toggleText1" style="display: none;">Сам текст в спойлере...</div>

<a href="javascript:toggle(2);" id="displayText2">Показать решение</a>
<div id="toggleText2" style="display: none;">Сам текст в спойлере...</div>
Ответить с цитированием
  #16 (permalink)  
Старый 21.12.2013, 20:22
Аватар для sport-chess
Интересующийся
Отправить личное сообщение для sport-chess Посмотреть профиль Найти все сообщения от sport-chess
 
Регистрация: 21.12.2013
Сообщений: 19

текст в редакторе:

Тест на работу ссс.

Рабочий вариант, который нужно просто вставить в то место, где нужно отобразить кнопку.

<input class="link" onclick="spoiler(this)" type="button" value="Показать решение" />
<div class="sp-text">Ваш текст ...</div>
<input class="link" onclick="spoiler(this)" type="button" value="Показать решение" />
<div class="sp-text">Ваш текст ...</div>

что убрать?
Ответить с цитированием
  #17 (permalink)  
Старый 21.12.2013, 20:25
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Редактор сам добавляет значит теги <p></p>
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #18 (permalink)  
Старый 21.12.2013, 20:32
Аватар для sport-chess
Интересующийся
Отправить личное сообщение для sport-chess Посмотреть профиль Найти все сообщения от sport-chess
 
Регистрация: 21.12.2013
Сообщений: 19

Rise - ГЕНИЙ!
Ребята, за помощь всем +.
Тема, благодаря человеку под ником Rise, закрыта.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как с помощью javascript установить selected для тега option? re-kru-t Общие вопросы Javascript 1 19.02.2011 15:49
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34