2011-01-29 3 views
1

런타임에 javascript를 지연시키는 매우 간단한 스크립트가 있습니다. 각 페이지에는 알 수없는 종속성이 있으므로 필요한 경우까지 모두로드되지는 않습니다.Safari 디버거에서 지연 로딩 된 javascript를 디버깅하는 방법

대부분의 프레임 워크와 마찬가지로 문서 헤드에 스크립트 태그를 추가하여 작동합니다.

모든 것이 잘 실행되지만 Safari 디버거는 "요소"속성에서 새 스크립트 태그를 보지 않으며 "스크립트"탭에도 표시하지 않습니다. 오류는 적절한 스크립트가 아닌 루트 문서에서 발생하는 것으로보고됩니다.

명백한 해결 방법은 모든 것을 정상적으로 작성하고 디버그 한 다음 종속성로드를 마지막 단계로 추가하는 것입니다. 그러나 나는 디버거를 더 행복하게 만드는 스크립트를 게으른로드하는 더 좋은 방법이 있는지 알고 싶다.

답변

-1

나는 eval을 사용하여 스크립트를로드하지 않으면 방화 광 디버거가 스크립트를 얻을 수있는 해킹을 가지고 있다는 것을 안다.

일반적으로 지연 시간이로드 된 스크립트는 디버거에서 액세스 할 수 없습니다. 하드 링크를 연결하고 프로덕션을 위해 지연로드를 추가해야합니다.

1

Safari는 예외가 발생할 때마다 코드의 지점에 대화식 디버거를 제공하거나 예외 처리시에만 일시 중지하도록 스크립트 탭에 설정합니다.

두 개의 수직 막대가있는 작은 팔각형처럼 보입니다. 3 상태 단추이며 도구 설명은 각 상태의 기능을 요약합니다.

+0

스크립트가 느리게로드되는 경우 디버거에는 중단하거나 단계별로 실행할 코드가 없습니다. – Raynos

관련 문제