Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.11.2011, 18:30
Кандидат Javascript-наук
Отправить личное сообщение для Suharik Посмотреть профиль Найти все сообщения от Suharik
 
Регистрация: 06.04.2010
Сообщений: 130

Перезагрузить страницу Как сделать чтобы не терялся фокус у инпута?
Всем привет. есть код
$(function () {
        $('.tip').each(function () {
            var trigger = $(this);
            var info = $('.popup');
            $(trigger).focus(function () {
                    var width = trigger.offset();
                    info.css({
                        top: width.top+30,
                        left: width.left,
                        display: 'block'
                    });
            }).blur(function () {
                    info.css({
                        display: 'none'
                    });
            });
        });
    });

<head>
  <style type="text/css" media="screen"> 
    <!--
        .popup {
        	position: absolute;
        	display: none;
        	z-index: 50;
        	border-collapse: collapse;
        }
    -->
    </style> 
</head>
<body> 
                  <input type='text' name='dfd' class="tip">
                  <input type='text' name='dfd' class="tip">
                  <input type='text' name='dfd' class="tip">
                  <input type='text' name='dfd' class="tip">
   
          <div id="dpop" class="popup"> sdfdsfdfgdfgdfgdfgfsdvbcxvzxcv</div>
</body>


При нажатии на инпут, показывается див чуть ниже того инпута на который нажал.
Как сделать чтобы при нажатии на этот див, который открылся, он не проподал, чтобы фокус на инпуте оставался. А если тыкнуть в другое место то фокус должен пропасть.
Сори в теме откудато взялось слово "Перезагрузить страницу " ))

Последний раз редактировалось Suharik, 29.11.2011 в 18:33.
Ответить с цитированием
  #2 (permalink)  
Старый 30.11.2011, 10:11
Кандидат Javascript-наук
Отправить личное сообщение для Suharik Посмотреть профиль Найти все сообщения от Suharik
 
Регистрация: 06.04.2010
Сообщений: 130

Моя истинная задумка это сделать ввод чисел в инпут мышкой посредствам открывающихся картинок (чиел в диве)
Тыкнул на инпут, выскачил рядом с этим инпутом див. внутри дива циферки как на калькуляторе. тыкаю на числа и они добавляются в тот инпут на который изначально нажали.
Если кто делал такое, помогите плиз кодом
Ответить с цитированием
  #3 (permalink)  
Старый 30.11.2011, 10:39
Лаборант :-)
Отправить личное сообщение для Pavel M. Посмотреть профиль Найти все сообщения от Pavel M.
 
Регистрация: 08.11.2011
Сообщений: 806

Сообщение от Suharik
Тыкнул на инпут, выскачил рядом с этим инпутом див. внутри дива циферки как на калькуляторе. тыкаю на числа и они добавляются в тот инпут на который изначально нажали.
Если кто делал такое, помогите плиз кодом
что-то подобное ниже

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>demo</title>
<script type='text/javascript' src='http://code.jquery.com/jquery-git.js'></script>
<script>
	$(function(){
		var inp = $('input');
		inp.focus(function () {
			$('div').show();
		});
		$('button').click(function () {
			inp.val(inp.val() + $(this).text());
		});
	});
</script>
</head>
<body>
	<input type="text">
	<div style="display: none">
		<button>1</button>
		<button>2</button>
		<button>3</button>
	</div>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 30.11.2011, 11:37
Кандидат Javascript-наук
Отправить личное сообщение для Suharik Посмотреть профиль Найти все сообщения от Suharik
 
Регистрация: 06.04.2010
Сообщений: 130

Pavel M.,
Супер. Только при клике на другое место (пустое или еще куда-то) Див с цифрами должен проподать.
Ответить с цитированием
  #5 (permalink)  
Старый 30.11.2011, 12:23
Лаборант :-)
Отправить личное сообщение для Pavel M. Посмотреть профиль Найти все сообщения от Pavel M.
 
Регистрация: 08.11.2011
Сообщений: 806

Сообщение от Suharik
Только при клике на другое место (пустое или еще куда-то) Див с цифрами должен проподать.
добавьте еще один обработчик на body или другой элемент и обрабатывайте там откуда пришел клик, например

$(document.body).click(function (e) {
   if($(e.target).is('body')){
         $('div').hide();
   }
});


если кликнули на body, то скрывайте нужный элемент
Ответить с цитированием
  #6 (permalink)  
Старый 16.12.2011, 16:04
Кандидат Javascript-наук
Отправить личное сообщение для Suharik Посмотреть профиль Найти все сообщения от Suharik
 
Регистрация: 06.04.2010
Сообщений: 130

Pavel M.,
Сделал почти так как сказал. Все получилось))
Если интересно скину ссылку на саму реализацию
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать, чтобы русские буквы не вводились в определенные поля формы? yachainik Общие вопросы Javascript 6 13.02.2017 16:43
Как сделать так, чтобы текст в ячейке переносился? webpuper ExtJS 4 06.09.2011 14:46
Как сделать чтобы кнопка выделялась при наведении курсора Krest_xxx Общие вопросы Javascript 2 28.08.2011 20:36
КАК сделать чтобы кнопка PRINT не отображалась при печати?:?? xxxxx82 Элементы интерфейса 1 19.04.2011 14:58