복붙노트

[JQUERY] 인라인을 적용 및 / 또는 외부 CSS는 jQuery를 동적으로로드하는 방법

JQUERY

인라인을 적용 및 / 또는 외부 CSS는 jQuery를 동적으로로드하는 방법

해결법


  1. 1.스타일 시트 (또는 유효한 CSS를 생성합니다 일부 URL)에 대한 경로 감안할 때 :

    스타일 시트 (또는 유효한 CSS를 생성합니다 일부 URL)에 대한 경로 감안할 때 :

    var myStylesLocation = "myStyles.css";
    

    ...이 중 하나가 작동합니다 :

    $.get(myStylesLocation, function(css)
    {
       $('<style type="text/css"></style>')
          .html(css)
          .appendTo("head");
    });   
    
    $('<link rel="stylesheet" type="text/css" href="'+myStylesLocation+'" >')
       .appendTo("head");
    
    $('<style type="text/css"></style>')
        .html('@import url("' + myStylesLocation + '")')
        .appendTo("head");
    

    또는

    $('<style type="text/css">@import url("' + myStylesLocation + '")</style>')
        .appendTo("head");
    

  2. 2.허용 대답은 IE 7 (그리고 IE 8의 버그)에서 작동하지 않습니다. 다음은 FF뿐만 아니라 IE에서 작동하며 크롬 / 사파리 :

    허용 대답은 IE 7 (그리고 IE 8의 버그)에서 작동하지 않습니다. 다음은 FF뿐만 아니라 IE에서 작동하며 크롬 / 사파리 :

    var url = 'urlOfStyleSheet.css'
    if(document.createStyleSheet) {
        try { document.createStyleSheet(url); } catch (e) { }
    }
    else {
        var css;
        css         = document.createElement('link');
        css.rel     = 'stylesheet';
        css.type    = 'text/css';
        css.media   = "all";
        css.href    = url;
        document.getElementsByTagName("head")[0].appendChild(css);
    }
    

  3. 3.

    var cssPath = "/path/to/css/";
    
    var linkStr = document.createElement("&lt;link rel='stylesheet' type='text/css' href='"+cssPath+"' media='screen' /&gt;");
    
    document.getElementsByTagName("head")[0].appendChild(linkStr);
    
  4. from https://stackoverflow.com/questions/805384/how-to-apply-inline-and-or-external-css-loaded-dynamically-with-jquery by cc-by-sa and MIT license