Javascript.RU

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

Не передается фокус на input
структура такая
<div id="ff" style="width:100px;height:100px;background-color:#ccc">
<input type="text" value="wow" id="my_input" style="display:none" />
</div>





при клике на div , происходит смена display:block;
и должна происходить передача фокуса на input через .focus()

но фокус через функцию не передается, только мышкой
в чем может быть проблема?

Заранее благодарен

Последний раз редактировалось jobmsk, 01.01.2014 в 04:49.
Ответить с цитированием
  #2 (permalink)  
Старый 30.12.2013, 21:59
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от jobmsk
и должна происходить передача фокуса на input через .focus()
Ага, через .focus() должна. А вот через .focus(function(){}) - нет!

В jQuery такие функции имеют два назначения - если агрументов нет, то вызывается одноименное событие. Если же передана функция - то никакого события не происходит, а сама функция устанавливается как обработчик события.
Так что после навешивания обработчика тебе нужно еще само событие сгенерировать, то есть вызывать .focus() без аргументов.

Вобще, в случае с focus() и click() происходит не только создание события, но и вызов одноименной функции, определенной на DOM-элементе, если я не ошибаюсь. Но большой разницы нет.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 30.12.2013, 22:20
Аспирант
Отправить личное сообщение для jobmsk Посмотреть профиль Найти все сообщения от jobmsk
 
Регистрация: 14.06.2012
Сообщений: 41

Сообщение от danik.js Посмотреть сообщение
Ага, через .focus() должна. А вот через .focus(function(){}) - нет!
да, этот момент я заметил..но!!!
если я делаю click не мышкой а через trigger ('click'),то фокус опять не передается

Последний раз редактировалось jobmsk, 30.12.2013 в 22:22.
Ответить с цитированием
  #4 (permalink)  
Старый 30.12.2013, 22:49
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Браузер какой? В хроме все пучком:
<div id="ff" style="width:100px;height:100px;background-color:#ccc">
<input type="text" value="wow" id="my_input" style="display:none" />
</div>

<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$("#ff").click(function(){
    $("#my_input").show();
    $("#my_input").focus(function(){
        $(this).select();
    });
    $("#my_input").focus();
});
</script>
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #5 (permalink)  
Старый 30.12.2013, 23:39
Аспирант
Отправить личное сообщение для jobmsk Посмотреть профиль Найти все сообщения от jobmsk
 
Регистрация: 14.06.2012
Сообщений: 41

ага точно, в FF значит проблема

Последний раз редактировалось jobmsk, 01.01.2014 в 04:50.
Ответить с цитированием
  #6 (permalink)  
Старый 31.12.2013, 00:20
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #7 (permalink)  
Старый 31.12.2013, 00:23
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от jobmsk
ага точно, в FF значит проблема
Хз, у меня в FF 26 винда все отлично фокусируется.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #8 (permalink)  
Старый 31.12.2013, 00:56
Аспирант
Отправить личное сообщение для jobmsk Посмотреть профиль Найти все сообщения от jobmsk
 
Регистрация: 14.06.2012
Сообщений: 41

Сообщение от danik.js Посмотреть сообщение
Хз, у меня в FF 26 винда все отлично фокусируется.
точно при переходе через trigger фокусируется?
Ответить с цитированием
  #9 (permalink)  
Старый 31.12.2013, 01:06
Аспирант
Отправить личное сообщение для jobmsk Посмотреть профиль Найти все сообщения от jobmsk
 
Регистрация: 14.06.2012
Сообщений: 41

странно тут фокусируется, а тут нет http://jsfiddle.net
Ответить с цитированием
  #10 (permalink)  
Старый 31.12.2013, 01:16
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от jobmsk
странно тут фокусируется, а тут нет http://jsfiddle.net
все ок хоть где
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При добавлении DOCTYPE "плывут" размеры input type=text Demath (X)HTML/CSS 4 08.07.2012 19:27
В каком Input фокус? Почемучкин Элементы интерфейса 10 08.12.2011 16:56
Opera не выполняет style.fontSize=... в поле input Маэстро Opera, Safari и др. 6 20.06.2011 12:03
Копирование из одного input в другой input bar-boss Общие вопросы Javascript 7 08.04.2008 19:10
Разным элементам input - разное форматирование. Как? eclipse (X)HTML/CSS 1 25.10.2007 13:55