Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.09.2012, 15:18
Интересующийся
Отправить личное сообщение для Gekko Посмотреть профиль Найти все сообщения от Gekko
 
Регистрация: 03.09.2012
Сообщений: 14

javascript + спойлер
Подскажите пожалуйста:

У меня определенный текст изначально находится под спойлером:
<input type="button" onclick="$('#$NUMBER$').slideToggle('fast');" href="javascript://" value="Показать">
<div id="$NUMBER$" style="display: none;"> 
текст 
</div>

И скрипт дающий ссылку на этот текст:
<a title="Нажмите для получения прямой ссылки на этот текст" href="javascript://" onclick="prompt('Ссылка на текст:',location.href.split('#',1) + '#comEnt$ID$');">cсылка на текст</a>

Что нужно дописать в этом коде (выше), что бы он при переходе по ссылке, открывал сам спойлер?
Ответить с цитированием
  #2 (permalink)  
Старый 03.09.2012, 17:41
Новичок на форуме
Отправить личное сообщение для MTapac Посмотреть профиль Найти все сообщения от MTapac
 
Регистрация: 03.09.2012
Сообщений: 3

<input type="button" onclick="document.getElementById('NUMBER').style.display = 'block';" href="#" value="Показать">
	<div id="NUMBER" style="display: none;"> 
	текст 
	</div>
Ответить с цитированием
  #3 (permalink)  
Старый 03.09.2012, 17:47
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

</div>
<input type="button" onclick="$('#$NUMBER$').slideToggle('fast');" href="javascript://" value="Показать">
<div id="$NUMBER$" style="display: none;"> 
текст 
</div>


<a title="Нажмите для получения прямой ссылки на этот текст" href="javascript://" onclick="prompt('Ссылка на текст:',location.href.split('#',1) + '#comEnt$ID$;');$('#$NUMBER$').slideToggle('fast');">cсылка на текст</a>
Ответить с цитированием
  #4 (permalink)  
Старый 03.09.2012, 19:26
Интересующийся
Отправить личное сообщение для Gekko Посмотреть профиль Найти все сообщения от Gekko
 
Регистрация: 03.09.2012
Сообщений: 14

Сообщение от Deff Посмотреть сообщение
<a title="Нажмите для получения прямой ссылки на этот текст" href="javascript://" onclick="prompt('Ссылка на текст:',location.href.split('#',1) + '#comEnt$ID$;');$('#$NUMBER$').slideToggle('fast');">cсылка на текст</a>
Открывает спойлер когда закрываешь окошко c ссылкой, а не при переходе по ссылке которая дается.

Последний раз редактировалось Gekko, 03.09.2012 в 19:54.
Ответить с цитированием
  #5 (permalink)  
Старый 03.09.2012, 21:48
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Gekko
Открывает спойлер когда закрываешь окошко c ссылкой, а не при переходе по ссылке которая дается.
<body onscroll="a=location.href.split('#');if(a[1])$('#next-'+a[1]).slideDown('fast')">









<input type="button" onclick="$('#next-NUMBER').slideToggle('fast');" href="javascript://" value="Показать">
<a name="NUMBER"></a>
<div id="next-NUMBER" style="display: none;">
текст 
</div>


<a title="Нажмите для получения прямой ссылки на этот текст" href="javascript://" onclick="prompt('Ссылка на текст:',location.href.split('#',1) + '#comEnt$ID$;');">cсылка на текст</a>


;if(a[1])$('#next-'+a[1]) Тут можно сделать более глубокую проверку на соответсвие нужным типам ссылок

- Реальный якорь <a name="NUMBER"></a> , - ставим чуть выше спойлера

Последний раз редактировалось Deff, 05.09.2012 в 00:03.
Ответить с цитированием
  #6 (permalink)  
Старый 03.09.2012, 23:45
Интересующийся
Отправить личное сообщение для Gekko Посмотреть профиль Найти все сообщения от Gekko
 
Регистрация: 03.09.2012
Сообщений: 14

Сообщение от Deff Посмотреть сообщение
<body onscroll="a=location.href.split('#');if(a[1])$('#next-'+a[1]).slideToggle('fast')">









<input type="button" onclick="$('#NUMBER').slideToggle('fast');" href="javascript://" value="Показать">
<a name="NUMBER"></a>
<div id="next-NUMBER" style="display: none;">
текст 
</div>


<a title="Нажмите для получения прямой ссылки на этот текст" href="javascript://" onclick="prompt('Ссылка на текст:',location.href.split('#',1) + '#comEnt$ID$;');">cсылка на текст</a>


;if(a[1])$('#next-'+a[1]) Тут можно сделать более глубокую проверку на соответсвие нужным типам ссылок

- Реальный якорь <a name="NUMBER"></a> , - ставим чуть выше спойлера
Перестал вообще открывать текст под спойлером. Наверно из-за разного ID кнопки и спойлера. И все также не открывает спойлер после перехода по ссылке. Может конечно я не туда что-то вставил. (проверил разные вариации)
Если что, $NUMBER$ это порядковый номер спойлера (для каждого свой: 1,2,3...99), ибо спойлеров на странице может быть много.

Последний раз редактировалось Gekko, 03.09.2012 в 23:56.
Ответить с цитированием
  #7 (permalink)  
Старый 04.09.2012, 00:26
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Gekko,
Поставьте тестовый пример - ничего не меняя - потом думайте сами - мну выложил для одной статической единицы спойлера без PHP ( далее размножите по образцу сами

(*За кнопкой - не гнался - поправил

Последний раз редактировалось Deff, 04.09.2012 в 00:30.
Ответить с цитированием
  #8 (permalink)  
Старый 04.09.2012, 18:19
Интересующийся
Отправить личное сообщение для Gekko Посмотреть профиль Найти все сообщения от Gekko
 
Регистрация: 03.09.2012
Сообщений: 14

Deff,
Я заменил $NUMBER$ в ID спойлера на #comEnt$ID$, потому что он для каждого тоже индивидуальный. Как мне теперь изменить
;if(a[1])$('#next-'+a[1])
что бы он работал?
Ответить с цитированием
  #9 (permalink)  
Старый 04.09.2012, 19:02
Интересующийся
Отправить личное сообщение для Gekko Посмотреть профиль Найти все сообщения от Gekko
 
Регистрация: 03.09.2012
Сообщений: 14

При
;if(a[1])$('#'+a[1])
спойлер начинает беситься около секунды и в итоге вообще пропадает или остается закрытым.

А можно ли сделать так:
Если ссылка в адресе не обычная (типа зашел по сгенерированной), то открыть спойлер с ID из ссылки? Потому что сейчас, как я понял он будет открываться если скролить.

Последний раз редактировалось Gekko, 04.09.2012 в 19:19.
Ответить с цитированием
  #10 (permalink)  
Старый 05.09.2012, 00:01
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Gekko
спойлер начинает беситься около секунды и в итоге вообще пропадает или остается закрытым.
Соррь, я забыл про что toggle - поправил
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книга: JavaScript. Сильные стороны Magneto Учебные материалы 16 21.04.2013 15:28
Первый Moscow JavaScript Meetup korenyushkin Общие вопросы Javascript 0 26.07.2011 15:23
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34
JavaScript на Яндекс.Фотки - почему тормозит браузеры? ZavFirefox Javascript под браузер 23 27.09.2009 19:24