小编典典

如果未加载,如何使用Javascript检查和加载CSS?

css

我需要检查(使用Javascript)是否已加载CSS文件,如果未加载,则进行加载。jQuery很好。


阅读 361

收藏
2020-05-16

共1个答案

小编典典

只需检查一下是否<link>存在一个元素,并将其href属性设置为CSS文件的URL:

if (!$("link[href='/path/to.css']").length)
    $('<link href="/path/to.css" rel="stylesheet">').appendTo("head");

使用document.styleSheets集合,普通的JS方法也很简单:

function loadCSSIfNotAlreadyLoadedForSomeReason () {
    var ss = document.styleSheets;
    for (var i = 0, max = ss.length; i < max; i++) {
        if (ss[i].href == "/path/to.css")
            return;
    }
    var link = document.createElement("link");
    link.rel = "stylesheet";
    link.href = "/path/to.css";

    document.getElementsByTagName("head")[0].appendChild(link);
}
loadCSSIfNotAlreadyLoadedForSomeReason();
2020-05-16