zoukankan      html  css  js  c++  java
  • JavaScript高级程序设计之动态脚本及动态样式

    1、动态加载脚本(src 原理,异步,支持跨域)

    var loadScript = function (url, callback) {
        var script = document.createElement("script");
        script.src = url;
    
        document.getElementsByTagName("head")[0].appendChild(script);
    
        if (script.addEventListener) {
    
            // for w3c
            script.onload = function () {
                script.onload = null;
                script.parentNode.removeChild(script);
    
                callback && callback();
            };
        } else if (script.readyState) {
        
            // for ie
            script.onreadystatechange = function () {
    
                if (script.readyState === "loaded" || script.readyState === "complete") {
    
                    script.onreadystatechange = null;
                    script.parentNode.removeChild(script);
    
                    callback && callback();
                }
            };
        } else {
    
            // for lower brower
            script.parentNode.removeChild(script);
            callback && callback();
        }
    };

    2、动态加载样式

    var loadStyle = function (cssText) {
        var style = document.createElement("style");
        style.type = "text/css";
        style.rel = "styleSheet";
    
        try {
            style.appendChild(document.createTextNode(cssText));
        } catch (ex) {
            // for ie
            style.styleSheet.cssText = cssText;
        }
    
        document.getElementsByTagName("head")[0].appendChild(style);
    };
    
    loadStyle("body{background-color:#aaa;}");
  • 相关阅读:
    poj 1679 Prim判断次短路
    poj 3621 二分+spfa
    poj 3613 floyd + 快速幂
    poj3463 最短路和比最短路长1的路径数
    poj 3635 带花费的Dij+head优化
    poj 3013 SPFA
    POJ 2449 Dijstra + A* K短路
    webStorm关于ESlint6语法格式化解决方案
    Vue之 css3 样式重置 代码
    vue常用组件
  • 原文地址:https://www.cnblogs.com/xiankui/p/3759366.html
Copyright © 2011-2022 走看看