require.js添加css文件实现代码:css.min.js

define(
    function () {
    if (typeof window == "undefined")return {
        load: function (n, r, load) {
            load()
        }
    };
    var head = document.getElementsByTagName("head")[0];
    var engine = window.navigator.userAgent.match(/Trident\/([^ ;]*)|AppleWebKit\/([^ ;]*)|Opera\/([^ ;]*)|rv\:([^ ;]*)(.*?)Gecko\/([^ ;]*)|MSIE\s([^ ;]*)/) || 0;
    var useImportLoad = false;
    var useOnload = true;
    if (engine[1] || engine[7])useImportLoad = parseInt(engine[1]) < 6 || parseInt(engine[7]) <= 9; else if (engine[2])useOnload = false; else if (engine[4])useImportLoad = parseInt(engine[4]) < 18;
    var cssAPI = {};
    cssAPI.pluginBuilder = "./css-builder";
    var curStyle;
    var createStyle = function () {
        curStyle = document.createElement("style");
        head.appendChild(curStyle)
    };
    var importLoad = function (url, callback) {
        createStyle();
        var curSheet = curStyle.styleSheet || curStyle.sheet;
        if (curSheet && curSheet.addImport) {
            curSheet.addImport(url);
            curStyle.onload = callback
        } else {
            curStyle.textContent = ‘@import "‘ + url + ‘";‘;
            var loadInterval = setInterval(function () {
                try {
                    curStyle.sheet.cssRules;
                    clearInterval(loadInterval);
                    callback()
                } catch (e) {
                }
            }, 10)
        }
    };
    var linkLoad = function (url, callback) {
        var link = document.createElement("link");
        link.type = "text/css";
        link.rel = "stylesheet";
        if (useOnload)link.onload = function () {
            link.onload = function () {
            };
            setTimeout(callback, 7)
        }; else var loadInterval = setInterval(function () {
            for (var i = 0; i < document.styleSheets.length; i++) {
                var sheet = document.styleSheets[i];
                if (sheet.href == link.href) {
                    clearInterval(loadInterval);
                    return callback()
                }
            }
        }, 10);
        link.href = url;
        head.appendChild(link)
    };
    cssAPI.normalize = function (name, normalize) {
        if (name.substr(name.length - 4, 4) == ".css")name = name.substr(0, name.length - 4);
        return normalize(name)
    };
    cssAPI.load = function (cssId, req, load, config) {
        (useImportLoad ? importLoad : linkLoad)(req.toUrl(cssId + ".css"), load)
    };
    return cssAPI
}
);
时间: 2024-10-14 10:48:34

require.js添加css文件实现代码:css.min.js的相关文章

用JS添加文本框案例代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

引入css文件时,css link和@import区别

这里link与@import介绍的是html引入css的语法单词.两者均是引入css到html的单词. 一.了解基本 1.link语法结构 <link href="CSSurl路径" rel="stylesheet" type="text/css" /> 实际应用截图: 使用link标签截图 Html link标签说明 此标签是引入CSS文件link标签,只要设置好路径即可. 2.@import语法结构 @import + 空格+ u

jquery.js和jquery.min.js的区别和springboot整合echarts.min.js

1.区别:jquery官网提供2种jQuery的下载,一种是jquery.js另一种是jquery.min.js文件名不一定完全相同,但通常情况下:jquery.js是完整的未压缩的jQuery库,文件比较大,一般用于阅读学习源码或修改源码,一般不用于线上项目.jquery.min.js是由完整版的jQuery库经过压缩得来,压缩后功能与未压缩的完全一样,只是将其中的空白字符.注释.空行等与逻辑无关的内容删除,并进行一些优化.这个版本一般用于网站引用使用,减小文件体积,降低网站流量,提升访问速度

html分组匹配css文件和img图片和js的:

查找到的:"(css.*?)" 替换的:"{% static '$1' %}" img: 查找到的:"(img.*?)" 替换的:"{% static '$1' %}" js: 查找到的:"(js.*?)" 替换的:"{% static '$1' %}" 原文地址:https://www.cnblogs.com/zhang-da/p/12088401.html

JS动态加载JS与CSS文件

JS动态加载JS与CSS文件 DEMO 一 HTML页面   jsforjscss.html 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"&

webpack配置:css文件打包和JS压缩打包

一.CSS文件打包 1.在src下新建css文件,在css文件下新建index.css文件,输入以下代码 body{ color:red; font-size:20px; } 2.css建立好后,需要引入到入口文件,这里我们引入到index.js中 import css from './css/index.css'; document.write("It works."); 3.在终端安装style-loader和css-loader 4.安装好后,我们开始在webpack.confi

使用grunt合并压缩js、css文件

需要了解的知识: 1.nodejs的安装与命令行使用 2.nodejs安装应用 3.grunt的初步了解 本文已假定读者已经熟悉以上知识. 好,我们继续: 任务1:将src目录下的所有zepto及插件合并,并压缩. --src/ ajax.js assets.js callbacks.js data.js deferred.js detect.js event.js form.js fx.js fx_methods.js gesture.js ie.js ios3.js selector.js

对前端web js,css文件进行压缩混淆

下载 yuicompressor jar包到本地路径 写一个批处理脚本compressJs.bat,将要压缩的js文件放在批处理文件的同一路径,yuicompressor.jar也放在同一路径 运行批处理文件,在该路径下会生成一个min文件夹,里面的*.min.jar就是压缩混淆后的js文件 css文件同上操作 一下是批处理脚本的内容: echo off set PathName=%cd%set minPath=%PathName%\min if exist "%minPath%" (

Spring Mvc + Maven + yuicompressor 使用 profile 来压缩 javascript ,css 文件; (十)

profile相关知识点: 在开发项目时,设想有以下场景: 你的Maven项目存放在一个远程代码库中(比如github),该项目需要访问数据库,你有两台电脑,一台是Linux,一台是Mac OS X,你希望在两台电脑上都能做项目开发.但是,安装Linux的电脑上安装的是MySQL数据库,而Mac OS X的电脑安装的是PostgreSQL数据库.此时你需要找到一种简单的方法在两种数据库连接中进行切换,你会怎么做? 此外,你的项目需要部署.为了调试,在开发时我们在Java编译结果中加入了调试信息(