Я пытаюсь найти строку поиска, которая после :focus
анимация запускается внутри себя. Анимация вызывается в jQuery.jQuery -: focus Triggering При переключении Windows/Tabs
For better clarification, the search bar can accessed by clicking here.
Проблема, которую я имею, вызывается при нажатии вне браузера или в другой вкладке браузера. Если выбрана строка поиска (:focus
), анимация запускается снова и заставляет панель поиска (и ее позиционирование) отбрасываться из исходного места. Это также происходит, если вы по праву нажимаете на панель поиска по какой-либо причине.
Часть JQuery:
var search = $('.searchField');
var searchButton = $('.searchSubmit');
var searchWidth = $('.searchField').innerWidth();
var searchButtonWidth = $('.searchSubmit').innerWidth();
search.on('focus', function() {
search.animate({ right: '+='+searchButtonWidth }, 800);
searchButton.animate({ left: '+='+searchWidth }, 800);
});
search.on('focusout', function() {
search.animate({ right: '-='+searchButtonWidth }, 800);
searchButton.animate({ left: '-='+searchWidth }, 800);
});
Спасибо за решение и совет! Я очень благодарен. Удаление переходов CSS решило проблему. CSS противоречил jQuery и его анимации. – Andrew