Javascript.RU

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

Нужна помощь по Модальному окне js
<script>
function toggle(el) {
el.style.display = (el.style.display == 'none') ? '' : 'none'
}
function modal(el) {
el.style.display = (el.style.display == 'none') ? '' : 'none'
}
</script>

<ul>
     <li><a onclick="toggle(hidden_content)" href="#">Ответы<span class="activ">(+1)</span></a></li>
</ul>
<p onclick= "modal(mod_okno)" >Пробный текст</p>
<div id="mod_okno" style="display: none;">
<form>
<textarea name="message"> </textarea>
</form>
</div>

В случае если пропишу еще один раз второй код он не работает!
Пример вот так этот код уже не работает:
<script>
function toggle(el) {
el.style.display = (el.style.display == 'none') ? '' : 'none'
}
function modal(el) {
el.style.display = (el.style.display == 'none') ? '' : 'none'
}
</script>

<li><a onclick="toggle(hidden_content)" href="#">Ответы<span class="activ">(+1)</span></a></li>
<p onclick= "modal(mod_okno)" >Пробный текст</p>
<div id="mod_okno" style="display: none;">
<form>
<textarea name="message"> </textarea>
</form>
</div> 
<div id="mod_okno" style="display: none;">
<form>
<textarea name="message"> </textarea>
</form>
</div>
Ответить с цитированием
  #2 (permalink)  
Старый 28.05.2015, 20:40
Аватар для KosBeg
Профессор
Отправить личное сообщение для KosBeg Посмотреть профиль Найти все сообщения от KosBeg
 
Регистрация: 22.05.2015
Сообщений: 384

ID должен быть уникальный!
а в втором варианте
1) <div id="mod_okno" style="display: none;">
2) <div id="mod_okno" style="display: none;">
дважды используется id="mod_okno"
используйте класы!

<p onclick= "modal(document.getElementsByClassName('mod_okno_1')[0])" >Пробный текст 1</p>
<div class="mod_okno_1" style="display: none;">
<form>
<textarea name="message"> </textarea>
</form>
</div> 
<p onclick= "modal(document.getElementsByClassName('mod_okno_2')[0])" >Пробный текст 2</p>
<div class="mod_okno_2" style="display: none;">
<form>
<textarea name="message"> </textarea>
</form>
</div>

<script>
function toggle(el) {
  el.style.display = (el.style.display == 'none') ? '' : 'none'
}

function modal(el) {
  el.style.display = (el.style.display == 'none') ? '' : 'none'
}
</script>

Последний раз редактировалось KosBeg, 28.05.2015 в 20:47. Причина: добавил пример
Ответить с цитированием
  #3 (permalink)  
Старый 28.05.2015, 21:02
Новичок на форуме
Отправить личное сообщение для 1Feniks1 Посмотреть профиль Найти все сообщения от 1Feniks1
 
Регистрация: 28.05.2015
Сообщений: 4

То для каждого окна который будет добавляться нужно еще писать другой class?
Ответить с цитированием
  #4 (permalink)  
Старый 28.05.2015, 21:32
Аватар для KosBeg
Профессор
Отправить личное сообщение для KosBeg Посмотреть профиль Найти все сообщения от KosBeg
 
Регистрация: 22.05.2015
Сообщений: 384

Сообщение от 1Feniks1
То для каждого окна который будет добавляться нужно еще писать другой class?
в КАЖДОГО окна должен быть УНИКАЛЬНЫЙ ID, а если это КЛАСЫ то можно и не уникальниый
я на быструю руку написал через класы, можно и через ID, но если это ID - ОН ОБИЗАТЕЛЬНО ДОЛЖЕН БЫТЬ УНИКАЛЬНЫЙ
<p onclick= "modal(mod_okno_1)" >Пробный текст 1</p>
<div id="mod_okno_1" style="display: none;">
<form>
<textarea name="message"> </textarea>
</form>
</div> 
<p onclick= "modal(mod_okno_2)" >Пробный текст 2</p>
<div id="mod_okno_2" style="display: none;">
<form>
<textarea name="message"> </textarea>
</form>
</div>

<script>
function toggle(el) {
  el.style.display = (el.style.display == 'none') ? '' : 'none'
}

function modal(el) {
  el.style.display = (el.style.display == 'none') ? '' : 'none'
}
</script>

Последний раз редактировалось KosBeg, 28.05.2015 в 21:36.
Ответить с цитированием
  #5 (permalink)  
Старый 28.05.2015, 21:41
Новичок на форуме
Отправить личное сообщение для 1Feniks1 Посмотреть профиль Найти все сообщения от 1Feniks1
 
Регистрация: 28.05.2015
Сообщений: 4

Угу! Ну спасибо! Очень хорошо ты мне помог! Я уже весь день искал..! Спасибо еще раз!
Ну я дальше писать
А тебе +
Ответить с цитированием
  #6 (permalink)  
Старый 29.05.2015, 09:52
Профессор
Отправить личное сообщение для demoniqus Посмотреть профиль Найти все сообщения от demoniqus
 
Регистрация: 28.05.2008
Сообщений: 182

5 копеек про ID - обработка зависит от браузера. Некоторые браузеры в случае неуникальных ID берут первый попавшийся, а некоторые вообще посылают к рогатому вся и всех. Поэтому ID стоит лишний раз не использовать, если есть сомнения в его будущей уникальности...
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
div в новом окне с помощью js Winni Элементы интерфейса 2 13.11.2014 17:44
Нужна помощь по снятию ограничения прога"Размеры" SerfUA jQuery 3 29.07.2014 16:57
Нужна ваша помощь по таймерам на JS((( anr001 Общие вопросы Javascript 3 18.04.2014 10:39
jQuery Ajax Rater Plugin и массив POST - Нужна помощь TROODON jQuery 12 30.12.2009 22:44
Кроссдоменный GET запрос. Нужна помощь! notxcain AJAX и COMET 4 07.12.2008 20:55