butteff
@butteff
Раз в тысячу лет заправляю свитер в носки

Как в js выполнять функцию, пока слой виден?

Есть код:

if ($('#aa_plugins_tabmsgBox').is(':visible') == true) {
			if( $('#navbar').offset().top < 0 ) {
				headfix();
			}
		}


Мне надо его оптимизировать, чтобы было что-то вроде
while ($('#aa_plugins_tabmsgBox').is(':visible') == true) do

Возможно ли это?
  • Вопрос задан
  • 138 просмотров
Пригласить эксперта
Ответы на вопрос 2
delch
@delch
Frontend developer
Во первых $('#aa_plugins_tabmsgBox').is(':visible') возвращает либо true, либо false, зачем его сравнивать еще раз ? Во вторых, у вас какой то скрипт же делает его видимым / невидимым, повесьте там тригер и подпишитесь на него где нужно, чтобы реагировать на смену состояния.
Ответ написан
Комментировать
In4in
@In4in
°•× JavaScript Developer ^_^ ו°
синхронно:
var aptB = $('#aa_plugins_tabmsgBox');
while(aptB.is(':visible')){
   //do
}


асинхронно:

var aptB = $('#aa_plugins_tabmsgBox');
setInterval(function(){
   if(aptB.is(':visible'))  //do
}, 1);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы