Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.09.2015, 13:06
Интересующийся
Отправить личное сообщение для Pavel_G Посмотреть профиль Найти все сообщения от Pavel_G
 
Регистрация: 03.11.2012
Сообщений: 22

как я могу заблокировать события flexslider, в момент ввода текста в textarea
Привет, ребята нужна помощь, у меня есть модальник со слайдером (flexslider) в этом модальнике есть textarea для ввода коммента к картинке, глюк в том что когда вводится текст и необходимо с помощь клавы переместится по тексту (влево/вправо) срабатывает событие prev() и next() в слайдере.

Подскажите есть ли возможность на время ввода текста отрубить все события слайдера, пытался с помощью .off() ничего не выходит

Может просто скажете хоть в какую сторону копать.
Спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 21.09.2015, 16:44
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

<textarea onkeypress="event.stopPropagation()"></textarea>
<script> document.body.onkeypress = function(){alert();}; </script>

Последний раз редактировалось Lemme, 21.09.2015 в 16:46.
Ответить с цитированием
  #3 (permalink)  
Старый 21.09.2015, 16:58
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Lemme,

Это отменит вообще клавиатурные кнопки управления, чего можно и не писать, такое можно задать в настройках плагина этого.
Ответить с цитированием
  #4 (permalink)  
Старый 21.09.2015, 17:08
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

laimas, с плагином не знаком, но показал лишь пример использования stopPropagation.

Цитата:
Это отменит вообще клавиатурные кнопки управления
ну это исправимо
<textarea></textarea>
<script>
	document.body.onkeypress = function(){alert();};
	document.querySelector('textarea').onkeypress = function(e) {
		if (e.keyCode === 37 || e.keyCode === 39) {
			e.stopPropagation();
		}
	}
</script>
Ответить с цитированием
  #5 (permalink)  
Старый 21.09.2015, 17:10
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Если так, то лучше проверять родителя источника события, то есть форму, чтобы и на input не реагировать. Да и такую проверку в код плагина добавить. )
Ответить с цитированием
  #6 (permalink)  
Старый 21.09.2015, 17:23
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

Цитата:
Да и такую проверку в код плагина добавить. )
Если человек такое спрашивает, то для него там будет темный лес
Ответить с цитированием
  #7 (permalink)  
Старый 21.09.2015, 18:09
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Наверное, но уж лучше пусть этому поводу запрашивает помощь, а не помнить постоянно о внешних добавках.
Ответить с цитированием
  #8 (permalink)  
Старый 22.09.2015, 06:59
Интересующийся
Отправить личное сообщение для Pavel_G Посмотреть профиль Найти все сообщения от Pavel_G
 
Регистрация: 03.11.2012
Сообщений: 22

спасибо за ответ, но вариант с stopPropagation к сожалению не работает
Ответить с цитированием
  #9 (permalink)  
Старый 22.09.2015, 08:24
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Откройте код плагина и найдите в нем строку

if(!a.animating&&(39===t||37===t))


измените ее на

if(!$(e.target).closest('form').length&&!a.animating&&(39===t||37===t))


Это с учетом того, что блокируется обработка именно полей формы, иначе нужно проверять источник события на его тип - e.target.tagName.

Последний раз редактировалось laimas, 22.09.2015 в 08:27.
Ответить с цитированием
  #10 (permalink)  
Старый 22.09.2015, 09:08
Интересующийся
Отправить личное сообщение для Pavel_G Посмотреть профиль Найти все сообщения от Pavel_G
 
Регистрация: 03.11.2012
Сообщений: 22

спасибо, большое, вот это помогло.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25
Как сделать чтобы textarea тянулась в высоту при добавлении в нее текста? javasc Общие вопросы Javascript 4 27.03.2012 22:14
Подскажите, как реализовать добавление текста в положение курсора textarea ArmagedDance Events/DOM/Window 2 13.05.2011 22:32
Как изменить цвет текста в textarea Joshka Общие вопросы Javascript 4 04.05.2011 16:09
Подсчет "реальной" длины текста в textarea modernx Элементы интерфейса 22 06.06.2010 18:30