Javascript 지연 실행 실현 방법(setTimeout)

1。지연 전환 tab 수요:페이지 에 몇 개의 tab 가 있 습 니 다.tab 를 전환 할 때 특정한 지역 의 데 이 터 를 끌 어 올 려 업데이트 합 니 다.단점:사용자 가 첫 번 째 tab 에서 끝까지 빠르게 전환 하면 n 개의 ajax 요청 이 발생 합 니 다.사실 사용 자 는 마지막 tab 의 데 이 터 를 봐 야 합 니 다
 
var changeTab = function(){
var timeId = 0;
return function(tabId){
if(timeId){
clearTimeout(timeId);
timeId=0;
}
setTimeout(function(){
//ajax do something
},500);
};
}();
비교적 간단 한 예 로 tab 에 연 결 된 onmouseover 입 니 다.사용자 가 끊임없이 tab 를 오 가 며 전환 하면 ajax 요청 이 실행 되 지 않 습 니 다.500 밀리초 동안 멈 춘 후에 만 실행 할 수 있 습 니 다.500 밀리초 입 니 다.사실은 매우 짧 고 사용자 체험 에 영향 을 주지 않 습 니 다.2。지연 자동 완성 수요:텍스트 입력 상자 에서 사용자 의 입력 을 감청 하여 자동 완성 기능 을 실현 합 니 다.단점:사용자 가 문 자 를 입력 할 때마다 ajax 요청 이 발생 합 니 다.사용자 가 긴 문자열 의 내용 을 연속 으로 입력 하면 요청 횟수 가 많 습 니 다.실제로 마지막 으로 사용자 가 필요 합 니 다.코드 는 위의 예 와 유사 하 다.3。스크롤 지연 수요:페이지 의 광고,사용자 가 원 하 는 곳 으로 스크롤 하면 따라 갑 니 다.단점:사용자 가 바닥 에 굴 러 가면 광 고 를 다시 찾 을 수 있 는 함수 가 N 번 발생 합 니 다.사실 사용자 가 멈 출 때 한 번 만 터치 하면 충분 하 다.코드 는 1 과 유사 합 니 다.사실은 이런 사례 가 많 습 니 다.어떤 일 들 은 바로 실행 할 필요 가 없고 시간 을 좀 늦 출 수 있 습 니 다.시간 이 짧 고 사용자 체험 에 영향 을 주지 않 으 며 불필요 한 소 모 를 많이 줄 일 수 있 습 니 다.

좋은 웹페이지 즐겨찾기