Перескакивает курсор в начало строки, в строке поиска динамического списка
Есть самописная конфигурация по учету товаров в рознице. Для справочника товаров через дополнение формы добавлена строка поиска динамического списка. Проблема в следующем: иногда при поиске(наборе текста), после нескольких введенных символов, курсор уходит в начало строки. Например, пользователь хочет найти «товар1», после ввода «тов» курсор переходит в начало строки, а пользователь не видя этого продолжает печатать и получается в итоге «ар1тов». Случается такое не всегда. При попытках увидеть эту проблему воочию, случилось 1 раз за час. Тестирование и исправление не помогает, удаление и восстановление индексов поиска тоже. База используется в файловом режиме. Программ типа punto switcher не установлено. Пока думается, что виноват код конфигурации. Только непонятно, что именно не так. Нужна помощь по решению этой проблемы.
Версия приложения: от 8.3.8.1652 до 8.3.8.2027
По конфигурации:
используется внешний вид «такси» и «8.2»
В справочнике товаров есть событие «ПриАктивизацииСтроки» в котором следующий код.
ТекДан = Элементы.Список.ТекущиеДанные; Если ТекДан <> Неопределено Тогда Если Строка(ТекДан.Штрихкод)<>СтарыеТекДан Тогда //Количество в упаковках Делимость = ТекДан.Делимость; КО = ТекДан.КоличествоОстаток; Цена = ТекДан.Цена; Если ДелимостьНеопределено Тогда Для каждого стрС Из ДанСк Цикл СтрокаСкидки = Скидки.Добавить(); СтрСтрукт = стрС.Значение; СтрокаСкидки.Количество = СтрСтрукт.Количество; СтрокаСкидки.Процент =СтрСтрукт.Процент; СтрокаСкидки.Скидка =СтрСтрукт.Скидка; Если СтрСтрукт.Скидка= "Централизованная" Тогда ВключитьКнопкуПечатиЦенникаСоскидкой=Истина; КонецЕсли; СтрокаСкидки.СоСкидкойУп =СтрСтрукт.СоСкидкойУп; СтрокаСкидки.СоСкидкойШт =СтрСтрукт.СоСкидкойШт; СтрокаСкидки.Приоритет =СтрСтрукт.Приоритет; КонецЦикла; КонецЕсли; СтарыеТекДан = ТекДан.Штрихкод; Если ВключитьКнопкуПечатиЦенникаСоскидкой Тогда Элементы.ФормаПечатьЦенникаДляТекущегоТовараСоСкидкой.Видимость=Истина; Иначе Элементы.ФормаПечатьЦенникаДляТекущегоТовараСоСкидкой.Видимость=Ложь; КонецЕсли; КонецЕсли; КонецЕсли;
Также есть обработчик ожидания в модуле управляемого приложения, запускается раз в 5 сек.
Код обработчика ожидания:
// Проверка Завершения приложения ПроверкаВыходаИзСистемы = Общий.ПроверкаВыходаИзСистемы(); Если ТипЗнч(ПроверкаВыходаИзСистемы)=Тип("Структура") Тогда Если ПроверкаВыходаИзСистемы.ЗавершениеРаботы Тогда ЗавершитьРаботуСистемы(Ложь); ИначеЕсли ПроверкаВыходаИзСистемы.ОткрытьФорму Тогда ОткрытьФорму("ОбщаяФорма.ФормаВыходаИзСистемы". РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс); КонецЕсли; КонецЕсли; //Запуск регламентированных заданий Если Общий.РольДоступнаНаСервере("Заведующий") Тогда //Завершение работы Заведующих Между 5:00 И 5:15 Если (Число(Формат(ТекущаяДата(), "ДФ=ЧЧмм"))>600) И (Число(Формат(ТекущаяДата(), "ДФ=ЧЧмм"))<615) Тогда ЗавершитьРаботуСистемы(); КонецЕсли; //Показать новые загруженные утвержденные товары заведующим Если ПоказыватьНовыеУтвержденныеТовары И Общий.ЕстьНовыеУтвержденныеТовары() Тогда ОткрытьФорму("РегистрСведений.УтвержденныеТовары.Форма.ФормаСпискаНовыхУтвержденныхТоваров", . РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс); КонецЕсли; //Вывод информации о разногласии цен //Запускать раз в час Если (глВремяПоследнегоПоказаИнформацииОРазногласииЦен =Неопределено) ИЛИ (глВремяПоследнегоПоказаИнформацииОРазногласииЦен<(ТекущаяДата()-(60*60))) Тогда Если ПоказыватьИнформациюОРазногласииЦен Тогда глВремяПоследнегоПоказаИнформацииОРазногласииЦен = ТекущаяДата(); ОткрытьФорму("Документ.АктРазногласияЦен.Форма.ФормаТоваровСРазногласиемЦен"); КонецЕсли; КонецЕсли; //Централизованная переоценка, Загрузка и вывод информации о переоцененных товарах Если ЗапускатьЦентрализованнуюПереоценку Тогда ОбменСервер.ЗагрузкаЦентрализованнойПереоценкиВФоне(); Если Общий.ПолучитьКонстанту("ПоказатьИнформациюОЦентрализованнойПереоценке") Тогда ОткрытьФорму("РегистрСведений.ТоварыОбработанныеЦентрализованнойПереоценкой.Форма. ФормаИнформацииОТоварахОбработанныхЦентрПереоценкой", . ВариантОткрытияОкна.ОтдельноеОкно. РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс); Общий.УстановитьКонстанту("ПоказатьИнформациюОЦентрализованнойПереоценке",Ложь); КонецЕсли; Если ((Общий.ПараметрыСеанса("ДатаИнфОТоварахПереоценки")+(60*30))<ТекущаяДата()) И Общий.ЕстьТоварыТоварыОбработанныеЦентрализованнойПереоценкой() Тогда ОткрытьФорму("РегистрСведений.ТоварыОбработанныеЦентрализованнойПереоценкой.Форма. ФормаИнформацииОТоварахОбработанныхЦентрПереоценкой", . РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс); Общий.ПараметрыСеанса("ДатаИнфОТоварахПереоценки",Ложь,ТекущаяДата()); КонецЕсли; КонецЕсли; //Запуск регламентных заданий Если НЕ ЗапускатьВыполнениеРегламентныхЗаданийВОдномПроцессе Тогда ВыполнитьОбработкуЗаданий(); КонецЕсли; КонецЕсли; Если ЗапускатьВыполнениеРегламентныхЗаданийВОдномПроцессе и ВыполнятьРегламентныеЗадания Тогда ВыполнитьОбработкуЗаданий(); КонецЕсли; Если ТекущийПользовательРобот Тогда Робот2.ОтветНаЗапросыИзвне(); КонецЕсли; //Завершение работы после 22:00 Если (Число(Формат(ТекущаяДата(), "ДФ=ЧЧ"))>22) И (НЕ ВыполнятьРегламентныеЗадания) И ЗапускатьВыполнениеРегламентныхЗаданийВОдномПроцессе И (Не Общий.РольДоступнаНаСервере("ПолныеПрава")) Тогда ЗавершитьРаботуСистемы(); КонецЕсли;
Также выполняются регламентные задания, для запуска регламентных заданий используется отдельный процесс.
p.s. На просторах интернета такой проблемы не нашел.
Почему курсор перескакивает в начало строки
Часовой пояс: UTC + 3 часа
перескакивает курсор во время печатания
Добрый день!
Кто-нибудь может помочь?
Несколько дней назад возникла странная проблема: при печатании в браузере (а печатаю я скоро) курсор перескакивает с одной позиции на другую и со строки на строку и соответственно текст продолжает печататься уже на новом месте, что естественно неудобно и это мягко говоря. Иногда даже при печатании удаляется последующий текст, перед которым оказался курсор. Пока это происходит только в сети (форумы, адресная строка гугл, фб). На почте пока не писал — не знаю. Сейчас пока пишу этот пост проблемы те же.
Задолбался.
Ноут уже старенький. Тошиба саттелит. Диск у него тоже имеет достаточно мехпроблем. Несколько раз вылетал в синий экран. Были невосстанавливаемые повреждения каких-то узлов. Но проблема с курсором происходит почему-то только в браузере.
Браузер Chrome. Последняя версия
В чем может быть причина, накрылась служба, отвечающая за взаимодействие с клавой? Но тогда почему траблы только в браузере? Или с Cromom что-то? Вирусов не обнаружил.
Pastore Возможно задеваете тачпад при наборе текста. На ташибе вроде тач отключается Fn + F9
Раньше не задевал и вдруг стал задевать?
Это вообще появилось после установки Телеграма. Но он у меня портабл-версии. И связи между ними я не вижу
Добавлено спустя 4 минуты 8 секунд:
Pastore писал(а):
Раньше не задевал и вдруг стал задевать? Точнее если уж задевал, то всегда. А проблеме несколько дней
Это вообще появилось после установки Телеграма. Но он у меня портабл-версии. И связи между ними я не вижу
Почему курсор перескакивает в начало строки
В мире Mozilla происходит много интересных событий. Но вам не нужно постоянно посещать новостные сайты, чтобы быть в курсе всех изменений. Зайдите на ленту новостей Mozilla Россия.
Страницы: 1
№1 19-05-2015 10:13:29
samura Участник Группа: Members Зарегистрирован: 17-09-2010 Сообщений: 13 UA: 38.0 Веб-сайт
Перескакивание курсора
Здравствуйте. При наборе текста в поисковике браузера курсор частенько перескакивает в адресную строку. Думал случайность, но это повторяется с завидным постоянством. Страшно бесит. Решил погуглить — такая проблема есть.
зы: может так подленько приучают вводить поисковые запросы в адресную строку?
Перескакивает курсор в input при добавлении текста
Всем добрый день, хочу сделать живой поиск как у Яндекса, все уже почти получилось, но если «переходить» клавишами клавиатуры вверх и вниз по списку предложенных вариантов поиска, то курсор в input переходит то в конец текста, то в начало. Соответственно если нажимать клавишу вниз, то курсор встает в конец текста в поле input, если нажать клавишу вверх, то курсор встанет сначала в начало текста в поле input , а только при повторном нажатии будет «переходить» по списку. Переходить в кавычках потому как просто имитируется выбор словосочетания в списке путем выделения цвета. Если убрать код вставки выбранного текста в поле input , то все нормально, курсор стоит на прежнем месте. $(‘#search’).val($(«li:eq(«+poz+»)»).text()); Вот часть кода для «перемещения» по списку вариантов словосочетания:
$('#search').keydown(function(e)< $("ul#resSearch").children().each(function() < $(this).css( "color", "black" ); >); razmer=$("ul#resSearch li").length; if (poz==-1) else if (poz==razmer) if (e.keyCode == '40') < $('ul#resSearch').find("li:eq("+poz+")").css( "color", "red" ); $('#search').val($("li:eq("+poz+")").text()); poz++;>if (e.keyCode == '38') < poz--; $('ul#resSearch').find("li:eq("+poz+")").css( "color", "red" ); $('#search').val($("li:eq("+poz+")").text()); >>);
Отслеживать
22.3k 10 10 золотых знаков 56 56 серебряных знаков 118 118 бронзовых знаков