Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Помогите обработать событие (https://javascript.ru/forum/events/25096-pomogite-obrabotat-sobytie.html)

realgleb 25.01.2012 11:51

Помогите обработать событие
 
Все доброго времени суток! Такая ситуация! Мне необходимо сделать форму отправки сообщения примерно как в контакте: Вот код:
function commentclicked(id) {        
	   document.getElementById("comment" + id).innerHTML = 
			"<div id='div_message2'>" + 
			"<div id='div_message'><textarea class = textarea_doughter rows=3 cols=60 id=commentmsg" + id + " >Введите сообщение</textarea></div>" + 
			"<input type=button class='button' value='Добавить сообщение' id=commentbutton" + id + " onclick='commentmessage(" + id + ")'>"
			+ "</div>";

echo "<div class=comment_com id=comment" . (int)$row['id'] . "><span onclick = 'commentclicked(" . (int)$row['id'] .")' id=pocomment>Комментировать</span></div><br>";

Вопрос в том что я когда кликаю по КОММЕНТИРОВАТЬ появляется textarea с этим проблем нет! Теперь мне надо прятать ее кликом в любом пустом месте! Надеюсь понятно объяснил проблему!
Помогите очень надо!

melky 25.01.2012 12:11

назначить обработчик клика на body и там скрывать textarea, если кликнули не по textarea

realgleb 25.01.2012 13:33

А можно код! Я в js не селен!

я сделал так:
<script>
$(document).ready(function(){
    $('#pocomment').click(function(){ 
    $('#div_message2').fadeIn();
    $('body').click(function(){      
    $('#div_message2').hide('slow');
    });
        return false;
    });
  });
</script>

но тогда когда кликаешь в textarea чтобы написать сообщение он также закрывается!

nikita.mmf 27.01.2012 14:09

$(document).mousedown(function(e){
    if ( e.target.id !=  'div_message2' ) {
        $('#div_message2').hide('slow');
    }
});


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