Функция не вызывает только один раз

#javascript #html #jquery

Вопрос:

Я пытаюсь execute only once , но это выполняется несколько раз.

Я показываю alert , когда пользователь достигает 90% страницы при прокрутке. Но он показывает предупреждение несколько раз.

Я также пытался:

  • Путем преобразования оператора в true после выполнения.

Но это не сработало

Файл page.html

 var percent = 90; var window_scrolled;  $(window).scroll(function() {  window_scrolled = ($(document).height()/100)*90;   if($(window).scrollTop()   $(window).height() gt;= window_scrolled) {  var excuted = false  if (!excuted) {  alert("scrolled to bottom");  excuted = true  }  } });  

Ответ №1:

Вы всегда устанавливаете значение excuted false каждый раз, поэтому оно всегда выполняется.

Попробуй это:

 var excuted = false $(window).scroll(function() {  window_scrolled = ($(document).height()/100)*90;  if($(window).scrollTop()   $(window).height() gt;= window_scrolled) {  if (!excuted) {  alert("scrolled to bottom");  excuted = true  }  } });