Javascript.RU

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

Отображение блока по фокусу, но всё не так просто
Суть задачи: в профиле пользователя должна быть возможность разместить на стене запись. Необходимо, чтобы была форма для ввода - поле для ввода, кнопка "Прикрепить" и кнопка "Отправить". Но с одним нюансом, если поле ввода не в фокусе, они должны быть скрыты. Я это реализовал с помощью onfocus.

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="form-post">
  <form>
    <textarea name="text" id="text" class="login-forma" placeholder="Что у Вас нового?" rows="1"></textarea>
    <div class="addpost" id="success">
      <a href="">Прикрепить</a>
      <input type="submit" value="Рассказать" name="add_post" class="btn btn-success" />
    </div>
  </form>
</div>


text.onfocus = function() {
  $("#success").fadeIn(1);
};

text.onblur = function() {
  $("#success").fadeOut(1);
};


Проблема в том, что если нажимаешь на кнопку прикрепить, или отправить, то, очевидно же, текстовое поле теряет фокус и нажатие не срабатывает, а просто скрывает кнопки. Как сделать, чтобы они пропадали лишь при потере фокуса поля + потере фокуса самого блока с кнопками?
Ответить с цитированием
  #2 (permalink)  
Старый 13.03.2017, 19:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

Дмитрий5421,
$(function() {
$("#text").on("focus",function(event) {
  $("#success").show();
})
$("#text").on("blur",function(event) {
  if($(event.relatedTarget).closest(".addpost").length) return;
  $("#success").hide();
})
});
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оцените мои скрипты в книге Виктор Кон Ваши сайты и скрипты 101 11.09.2011 19:59
.animate() - все просто но все такие не работает.. uExpo Общие вопросы Javascript 5 14.08.2011 01:52
помогите, все очень просто но что туплю betonka Events/DOM/Window 4 14.07.2011 13:08
Разбираем AjaxOOP eai Общие вопросы Javascript 41 04.11.2010 23:37
Возможна ли смена типа созданного объекта в Javascript? phprus Общие вопросы Javascript 9 04.07.2009 02:41