목차
DOM ReadyState 속성에는 총 5가지 상태가 있습니다
웹 프론트엔드 JS 튜토리얼 네이티브 JS가 JS 및 CSS 파일과 코드 스크립트를 동적으로 로드하는 방법

네이티브 JS가 JS 및 CSS 파일과 코드 스크립트를 동적으로 로드하는 방법

Jul 20, 2018 am 11:25 AM
css javascript

이 글에서는 네이티브 JS가 JS 및 CSS 파일과 코드 스크립트를 동적으로 로드하는 방법을 소개합니다. 필요한 경우 이를 참조할 수 있습니다.

DOM ReadyState 속성에는 총 5가지 상태가 있습니다

  1. uninitialized: 초기 상태uninitialized:初始状态

  2. loading:document加载中

  3. loaded: document加载完成

  4. interactive:已加载并可与用户交互,但还需要加载图片等其他资源

  5. complete

loading: 문서가 로드 중입니다

로드됨 : 문서가 로드되었습니다
  1. interactive: 문서가 로드되어 사용자와 상호 작용할 수 있지만 이미지와 같은 다른 리소스를 로드해야 합니다
  2. 완료: 모든 리소스가 로드됩니다.
  3. DOM 문서 로드 순서:
  4. HTML 구조 구문 분석

  5. 외부 스크립트 및 스타일 시트 파일 로드(로드)

구문 분석 및 실행 scripts


DOM 트리 빌드 완료(readyState: 대화형)

외부 리소스 파일(그림 등) 로드

페이지 로딩 완료(readyState: 완료)

공용 메소드 동적 로딩

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

var DynamciLoadUtil = {

    // 动态加载外部js文件,并执行回调

    loadJS: function(url, callback){

        var script = document.createElement('script');

        script.type = 'text/javascript';

        script.src = url;

        if(typeof callback == 'function'){

            script.onload = script.onreadystatechange = function(){

                if(!this.readyState || this.readyState == 'loaded'

                                    || this.readyState == 'complete'){

                    callback();

                    script.onload = script.onreadystatechange = null;

                }

            }

        }

        document.body.appendChild(script);

        //document.getElementsByTagName('body')[0].appendChild(script);

    },

    // 行内方式动态加载js代码

    loadJSText: function(jsText){

        var script = document.createElement('script');

        script.type = 'text/javascript';

        try {

            // Firefox,Safari,Chrome,Opera支持

            script.appendChild(document.createTextNode(jsText));

        catch(ex){

            // IE早期的浏览器,需要使用script的text属性来指定js代码

            script.text = jsText;

        }

        document.body.appendChild(script);

    },

    // 动态加载外部CSS文件

    loadCSS:function(url){

        var link = document.createElement('link');

        link.rel = 'stylesheet';

        link.type = 'text/css';

        link.url = url;

        document.getElementsByTagName('head')[0].appendChild(link);

    },

    // 使用<style>标签包含嵌入式CSS

    loadCSSText: function(cssText){

        var style = document.createElement('style');

        style.type = 'text/css';

        try{

            // Firefox,Safari,Chrome,Opera支持

            style.appendChild(document.createTextNode(cssText));

        catch(ex){

            // IE早期浏览器,需要使用style元素的styleSheet属性的cssText属性

            style.styleSheet.cssText = cssText;

        }

    }

}

로그인 후 복사
🎜관련 권장 사항: 🎜🎜🎜🎜js 이진 트리 재구성을 위한 알고리즘 분석🎜🎜🎜🎜🎜 JavaScript의 Object.defineProperty() 메서드 분석🎜🎜🎜🎜🎜

위 내용은 네이티브 JS가 JS 및 CSS 파일과 코드 스크립트를 동적으로 로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

vue에서 자리 표시자는 무엇을 의미합니까? vue에서 자리 표시자는 무엇을 의미합니까? May 07, 2024 am 09:57 AM

vue에서 자리 표시자는 무엇을 의미합니까?

Vue에서 공백을 쓰는 방법 Vue에서 공백을 쓰는 방법 Apr 30, 2024 am 05:42 AM

Vue에서 공백을 쓰는 방법

Vue에서 DOM을 얻는 방법 Vue에서 DOM을 얻는 방법 Apr 30, 2024 am 05:36 AM

Vue에서 DOM을 얻는 방법

js에서 스팬은 무엇을 의미하나요? js에서 스팬은 무엇을 의미하나요? May 06, 2024 am 11:42 AM

js에서 스팬은 무엇을 의미하나요?

js에서 rem은 무엇을 의미합니까? js에서 rem은 무엇을 의미합니까? May 06, 2024 am 11:30 AM

js에서 rem은 무엇을 의미합니까?

Vue에 이미지를 삽입하는 방법 Vue에 이미지를 삽입하는 방법 May 02, 2024 pm 10:48 PM

Vue에 이미지를 삽입하는 방법

스팬 태그의 기능은 무엇입니까 스팬 태그의 기능은 무엇입니까 Apr 30, 2024 pm 01:54 PM

스팬 태그의 기능은 무엇입니까

js에서 프롬프트를 래핑하는 방법 js에서 프롬프트를 래핑하는 방법 May 01, 2024 am 06:24 AM

js에서 프롬프트를 래핑하는 방법

See all articles