>

angularjs/1.6.4 지시문 내에서 클릭을 발생시키는 방법이 궁금합니다.

기본적으로이 코드는 부분적으로 작동합니다 :

app.directive('abc', function() {
  return {
    :
    :
    link: function(scope, element, attrs, controller) {
          :
       setTimeout(function(){element[0].click();}, 400);
          :
    }
  }
});

그러나 페이지를로드하는 데 400ms보다 오래 걸리는 경우 문제가 발생합니다. 이 경우 작동하지 않습니다. 따라서 지정된 시간 초과 기간에 의존하지 않고 페이지를로드하는 데 걸리는 시간에 관계없이 작동하는 솔루션을 선호합니다.


  • 답변 # 1

    setTimeout 를 사용해야합니다   milliseconds 없이  다음 틱에서 함수를 실행합니다. 자세한 내용은 여기를 참조하십시오.

    app.directive('abc', function() {
      return {
        :
        :
        link: function(scope, element, attrs, controller) {
              :
           setTimeout(function(){element[0].click();});
              :
        }
      }
    });
    
    

관련 자료

  • 이전 python - 출력을 파일로 내보내기, 날짜별로 파일 이름 증가
  • 다음 javascript - 문자열에서 HTML 태그로 변환