zoukankan      html  css  js  c++  java
  • js动态添加script脚本、检测script脚本、删除script脚本

    asyncLoadScript(context,{src,id}){//异步加载script脚本
                return new Promise(resolve=>{
                    if(context.dispatch("checkIsLoadScript",src)){
                        if($("#"+id) && $("#"+id).src==src){//若script标签存在,则先删除
                            console.log("删除成功")
                            $("#"+id).remove(); 
                        }
                    }
                    let scriptNode = document.createElement("script");
                    scriptNode.setAttribute("type", "text/javascript");
                    scriptNode.setAttribute("charset", "utf-8");
                    scriptNode.setAttribute("id",id);
                    scriptNode.setAttribute("src", src);
                    document.body.appendChild(scriptNode);
                    if (scriptNode.readyState) { //IE 判断
                        scriptNode.onreadystatechange = () => {
                            if (scriptNode.readyState == "complete" || scriptNode.readyState == 'loaded') {
                                resolve();
                            }
                        }
                    } else {
                        scriptNode.onload = () => {
                            console.log("script loaded");
                            resolve();
                        }
                    }
                })
            },
            // 检测是否加载了 script脚本 文件
            checkIsLoadScript(context,src) {
                let scriptObjs = document.getElementsByTagName('script');
                let reg=RegExp(src);
                for(let sObj of scriptObjs) {
                    if (sObj.src.match(reg)) {
                        return true;
                    }
                }
                return false;
            },

  • 相关阅读:
    margin塌陷(collapse)
    this的值
    变量、函数声明提升
    Git与Svn的区别—笔记1
    ECMAScript 总结
    正则表达式
    i2c 通信
    player/stage 学习---安装
    各种分区类型对应的partition_Id
    ubuntu 映射网络驱动器到本地
  • 原文地址:https://www.cnblogs.com/fqh123/p/12788265.html
Copyright © 2011-2022 走看看