Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.03.2015, 20:51
Аспирант
Отправить личное сообщение для mortido Посмотреть профиль Найти все сообщения от mortido
 
Регистрация: 29.09.2014
Сообщений: 83

проблемы с click и hide
Всем привет. Есть код:
<script>
$(function () {
  $('.add-comment').click(function(){
    var editor = $('.editor');
    if (editor.is(":hidden")){
      editor.slideDown();
    }else{
      editor.slideUp();
    }
    return false;
  });
  
  $('.comment-ans').click(function(){
    var $editor = $('.editor');
    $editor.hide();
    var mid = $(this).attr("id");
	$editor.remove();
    var clone = $editor.clone();
    setTimeout(function(){
      $(clone).css("margin", "5px 0 5px 20px");
      $(clone).insertAfter("div#msg"+mid).slideDown();
      $("input[name=parent]").val(mid);
    }, 600);
  });
});
</script>

При клике на comment-ans появляется textarea, при повторном клике она сначала исчезает, а потом снова появляется. Подскажите, как сделать, чтобы при первом клике textarea появлялась, а при втором исчезала. Спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 25.03.2015, 21:03
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от mortido
setTimeout
зачем?
Ответить с цитированием
  #3 (permalink)  
Старый 25.03.2015, 21:24
Аспирант
Отправить личное сообщение для mortido Посмотреть профиль Найти все сообщения от mortido
 
Регистрация: 29.09.2014
Сообщений: 83

хз, код в нете нашел, сам в js не силен, пробовал немного манипулировать кодом, но ничего не выходит.
Ответить с цитированием
  #4 (permalink)  
Старый 25.03.2015, 21:35
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

mortido,
а clone зачем?
Ответить с цитированием
  #5 (permalink)  
Старый 25.03.2015, 21:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

mortido,
а минимальный html ?
Ответить с цитированием
  #6 (permalink)  
Старый 25.03.2015, 21:57
Аспирант
Отправить личное сообщение для mortido Посмотреть профиль Найти все сообщения от mortido
 
Регистрация: 29.09.2014
Сообщений: 83

да не знаю, говорю же код в интернете нашел, он не мой. он нужен для древовидных комментариев.
Ответить с цитированием
  #7 (permalink)  
Старый 25.03.2015, 22:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Перенос поля ответа в нужный пост
mortido,
вариант без jQuery для медитации
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
 .comment-ans{
   cursor: pointer;
 }
 form {
   display: none;
 }

 div form {
   display: block;
 }

  </style>
   <script>
    var node;
    document.addEventListener("click", function(event) {
    var el = event.target;
    if (el.classList.contains('comment-ans')) {
        node && node.querySelector('.comment-ans') && (node.querySelector('.comment-ans').value = 'ответить');
        el.value = (node == el.parentNode) ?  'ответить' : 'закрыть' ;
        node = (node == el.parentNode) ? document.body : el.parentNode
        node.appendChild(document.forms.mes);

    }
});

  </script>
</head>

<body>
<div>01<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>02<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>03<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>04<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>05<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>06<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>07<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>08<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>09<input name="" type="button" value="ответить" class="comment-ans"></div>
<div>10<input name="" type="button" value="ответить" class="comment-ans"></div>
<form name="mes" action="http://">
   <textarea name=""></textarea>
</form>
</body>

</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
hide(), show(), click() antserg jQuery 2 02.01.2012 20:03
hide marker by id sedoyksa ExtJS 0 21.11.2011 09:09
Проблемы с click() (не запускается при клике) hase jQuery 4 13.11.2010 22:25
live click выполняется несколько раз hara jQuery 9 09.06.2010 10:58
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37